5

我是 jQuery 和 Ajax 的新手,我遇到了问题。我在控制台上收到以下错误:

NS_ERROR_XPC_BAD_CONVERT_JS: Could not convert JavaScript argument @ http://localhost
/jquery.js:7065

为什么我会收到此错误?

这是我正在使用的代码:

function upload_file(){
    var file = document.form1.file_upload;
    var date = document.form1.date_added;
    var author = document.form1.author;
    var user = document.form1.user;
    var semester = document.form1.semester;
    var class1 = document.form1.class;
    var subject = document.form1.subject;
    $.ajax({
        type:"get",
        url:"upload_file.php",
        data:{
        "file":file,
        "date":date,
        "author":author,
        "user":user,
        "semester":semester,
        "class":class1,
        "subject":subject
        },
        success:function(result){
        $("#result").html(result);
        }
    });
    }

我在等你的回复。

PS:我搜索了论坛,但没有得到我想要的,所以如果我错过了什么,请提前道歉。

4

4 回答 4

8

我认为问题在于您正在尝试将完整的对象传递给 JSON。您应该使用值而不是对象。例如,替换:

var subject = document.form1.subject;

和:

var subject = document.form1.subject.value;
于 2012-12-05T17:16:16.707 回答
0

用这个,我猜括号不匹配——

    $.ajax(
                 {
        type:"get",
        url:"upload_file.php",
        data:{
        "file":file,
        "date":date,
        "author":author,
        "user":user,
        "semester":semester,
        "class":class1,
        "subject":subject
        },
        success:function(result)
               {
        $("#result").html(result);
        }
    );
于 2012-09-18T08:44:00.213 回答
0

我们有同样的错误。

升级到最新版本的 JQuery 并解决了问题。

这似乎也适用于一些在这里看到该解决方案的人

于 2013-02-19T13:12:58.773 回答
0

我遇到了同样的错误,但我的问题是不同的。

事实证明,我在 ajax 调用中传递了一个根本不存在于我的 DOM 中的参数。

在@ZackValentine-s 的情况下(或对于将来阅读此内容的人),请在实际调用本身之前检查您将要传递给 ajax 调用的所有数据项的值。

于 2013-03-23T08:37:38.337 回答