jquery ajax在函数内部无效

时间:2016-08-03 12:31:25

标签: php jquery ajax

所以我创建了一个将数据发布到php页面的函数:

function updateData(x,y){
     $.ajax({   
        type: 'POST',   
        url: 'myupdate.php',   
        data: {x:y},
           success: function(data){
           $("#resultdiv").html(data);
          }
       });
}

我将这个函数称为:

$(".myclass").click(function(){
        var newname = $("#myname").val();    //value of input type="text".
        updateData('name', newname);        // also tried updateData(name, newname)
});

因此,如果我将值输入为Rocky并启动该函数,问题是发送到php页面myupdate.php的值是x = Rocky。我希望它是名字=洛基。我该如何解决这个问题。

非常感谢。

2 个答案:

答案 0 :(得分:5)

在变量中提供对象的键时,需要使用括号表示法。试试这个:

function updateData(x, y) {
    var data = {};
    data[x] = y;

    $.ajax({   
        type: 'POST',   
        url: 'myupdate.php',   
        data: data,
        success: function(data){
            $("#resultdiv").html(data);
        }
    });
}

答案 1 :(得分:1)

您需要动态定义对象属性

<script>
if(!window.jQuery)
{
   var script = document.createElement('script');
   script.type = "text/javascript";
   script.src = "path/to/jQuery";
   document.getElementsByTagName('head')[0].appendChild(script);
}
</script>