【问题标题】:Can't pass a string with JQuery.ajax无法使用 JQuery.ajax 传递字符串
【发布时间】:2014-10-24 12:01:39
【问题描述】:

我有意见;

 <input id="product" type="button" value="Add To Cart" onclick="addAjax({{=dogProducts[i].name}})"/> 

输入是 fdgdg 我验证了这个购买查看页面元素。还有这个 Ajax 函数:

function addAjax(id){
    $("#output").text("") ;
    $("#ajaxerror").text("");
    //alert(id)
    console.log(id);
    jQuery.ajax({
        type:'GET',
        url:'/pkpetscart/default/addtocart',
        data: {
            product:id
        },
        timeout: 1000,
        success: function(msg) {
            console.log(msg);
            // place returned value  in the DOM
            jQuery('#output').html(msg)
        },
        error: function(objAJAXRequest, strError){
            $( "#ajaxerror" ).append( " AJAX error:" + strError );
        }
    });
}

当我尝试运行它时,萤火虫显示

ReferenceError: fdgdg is not defined
http://127.0.0.1:8000/pkpetscart/default/dogs
Line 1

我该如何解决这个问题。

【问题讨论】:

    标签: javascript ajax xml


    【解决方案1】:

    您需要在引号中传递参数以使其成为字符串,如果它不在引号中,则将其视为您未定义的变量。因此你得到了错误

    ReferenceError: fdgdg 未定义

    使用

    onclick="addAjax('{{=dogProducts[i].name}}')"
    

    而不是

    onclick="addAjax({{=dogProducts[i].name}})"
    

    【讨论】:

    • 叹息...有时我想知道我为什么要起床:3 谢谢老兄。计时器用完后,我会为你竖起大拇指。
    • @user4021524,这发生在我们所有人身上
    猜你喜欢
    • 1970-01-01
    • 2011-01-05
    • 1970-01-01
    • 2023-03-04
    • 2021-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多