我有一些javascript,它将数据发送到调用php页面的函数,但我遇到了一个错误,找不到任何信息。postData()调用位于另一个普通javascript函数的中间。但是我无法将数据提交到php页面。
function postData() {
var postdataURL = "path/to/php/page.php";
$.post (
postdataURL, {
"formid":5,
"clientid":1,
"userid":1,
"level":mycat,
"extra":mytimer,
"pid":pid
},
function () {});
}
查看变量mycat,mytimer,pid可能是一个jQuery对象。这意味着你竞选了
mycat = $('#cate')
如果这是真的,你只需要修复
mycat = $('#cate').val()
或者某些代码获得了真正的价值。
从属性的名称中删除"
$.post (
postdataURL, {
formid:5,
clientid:1,
userid:1,
level:mycat,
extra:mytimer,
pid:pid
},
function () {});
并添加
alert("Got called");
之后
function postData() {
以确保该函数被调用
我在像您一样执行jQuery$.ajax()调用时遇到了这个问题。显然(在我的案例中),它是由引用一个不在范围内且未定义的变量引起的。例如,在您的代码中:
"level":mycat,
"extra":mytimer,
"pid":pid
如果mycat、mytimer或pid为null,并且您有同样的问题,那就可以了
在我的案例中,出现了与@user3740976相同的问题。我在url中放入了一个未定义的参数。
$.ajax({
type: requestType,
url: url,
dataType: dataType,
data: dataParams,
...
其中dataParams是
{"title":{},"iSBN":"111","partNumber":"3332","bookCategory":"1"}
标题未定义。