jquery: - [object Object]错误

时间:2011-02-07 17:28:11

标签: javascript jquery

我有一个validation.js文件

var name = $("#name");

    $.ajax({
        type:       "get",
        url:        "test.jsp",
        data:           "name="+name,
        success:    function(msg) {

            $('#result').hide();

            $("#result").html(msg)
            .fadeIn("slow");
        }
    });

test.jsp的

</head>
    <body>
        <h1><%
        String user=request.getParameter("name");
        out.print(user);
        %></h1>
    </body>

登录user.jsp文件

<form method="post" id="customForm" action="welcome.html">
        <div>
            <label for="name">Name</label>
            <input id="name" name="name" type="text" />
                            <span id="nameimage"></span>

            <span id="nameInfo"></span>
                          <p id="result"></p>  
        </div>

一旦用户进入我的表格中的下一个场地,我必须在我的表单中显示用户名。但是 它在p标签开始的位置显示[object Object]错误

4 个答案:

答案 0 :(得分:12)

看起来像msg并不是您所期望的。我想你想要msg.responseText

您看到[object Object]的原因是因为msg属于object类型,您将其传递给.html,它会将其转换为字符串。因此html填充了对象的字符串表示,在这种情况下是“[object Object]”

答案 1 :(得分:5)

您需要传递#name对象的值或文本。像这样:

var name = $("#name").val();
var name = $("#name").text(); 

答案 2 :(得分:0)

msg似乎是一个文档对象,而不是包含相应名称的字符串。在我看来,你想要$('#response').text($(msg).find('h1').text());

答案 3 :(得分:0)

当您使用锚标记时,旧的IE期望在某处重定向。如果您有以下内容:

<a href="javascript: submit()">Submit</a>

即使[Object object]使用了ajax,IE也会在使用JSON时显示带submit()的空白页。

您可以使用onClick或javascript:void sumbit(),如下所示:

<a id="btn-submit">Submit</a>
<script>
    $(document).on('click', '#btn-submit', function(event){
        event.preventDefault();
        submit();
    });
</script>

我没有测试无效解决方案,但我的同事说这是他使用的那个。