Web2py字符串var到JavaScript

Web2py String var to JavaScript

本文关键字:JavaScript var 字符串 Web2py      更新时间:2023-09-26

我有一个函数:

def productdetails():
    if session.login == False:
        redirect(URL('petscart','default','login'))
    myproducts=db(db.Products.product_number > 0).select()
    return dict(products=myproducts)

一个html文件,包含:

<form>
    <input id="product" type="button" value="Add to Cart" onclick="textAjax({{=product['product_number']}})"/>
</form>

还有一个JS函数(textAjax),它接受传递给它的product_number并做一些有趣的事情,将一些数据传递给web2py控制器。奇怪的是,在这种情况下,{{=product['product_number']}}正在传递一个整数。如果我尝试传递一个字符串,例如{{=product['product_name']}}javaScript将显示一个参考错误Reference Error "value" cannot be defined.

我也会粘贴JS:

<script type="text/javascript">
    function textAjax(id){
        jQuery.ajax({
            type:'GET',
            url:'/test/default/addtocart',
            data: {
                product:id
            },
            timeout: 1000,
            success: function(msg) {
                console.log(msg);
                jQuery('#output').html(msg)
            },
            error: function(objAJAXRequest, strError){
                $( "#ajaxerror" ).append( " AJAX error:" + strError );
            }
        });
    }
</script>

刺痛必须用引号括起来:

textAjax('{{=product['product_number']}}')