通过jQuery $.post()函数发送数据时的JavaScript变量


JavaScript variable when sending data via jQuery $.post() function

我有一个问题,当我想通过jQuery的$.post发送输入数据。我有这样的输入:

<input id="mydata" value='<?php echo $data; ?>' >

,我想通过jQuery的$.post()函数发送数据。

这个$.post函数运行,但它不发送任何东西:

var the_data = $('#mydata').val();
//alert(the_data); has correct data!!
$.post("http://php/server", the_data , function(data){
    alert(data);
}, "html");

但是这个发送的数据是正确的:

$.post("http://php/server", <?php echo $data; ?> , function(data){}, "html");

我应该使用input来保存数据,方法2不适合我。

数据必须是对象

var the_data = {
    mydata: $('#mydata').val()
};

您可以在PHP中使用$_POST['mydata']访问它。