$ .ajax()错误返回值[object HTMLInputElement]

时间:2017-09-30 21:50:06

标签: javascript jquery html ajax

从输入字段接收数据并发送到数据库的每个过程都正常进行。当我在发送到数据库后尝试获取数据时,我收到错误[object HTMLInputElement]

enter image description here

当我将退货模式从text更改为html时,它会有效地返回数据,此数据与输入字段一起显示,您可以在下方的打印屏幕上查看此内容;

The arrows represent of border-bottom of input-field

红色箭头表示输入字段的边框底部。

$(document).ready(function () {
        $('#publish-sell').click(function () {
            var payload = {
                nameClient: $('#nameClient').val(),
                nameFantasySell: $('#nameFantasySell').val(),
                addresOfClientSell: $('#addresOfClientSell').val(),
                annotations: $('#annotations').val(),
                neighborhood: $('#neighborhood').val(),
                cep: $('#cep').val(),
                phoneLandline: $('#phoneLandline').val(),
                cellphone: $('#cellphone').val(),
                autocompleteBusinessReseller: $('#autocompleteBusinessReseller').val(),
                amountProduct: $('#amountProduct').val(),
                productSoldSell: $('#productSoldSell').val(),
                producFinalPrice: $('#producFinalPrice').val(),
                registeredDaySell: $('#registeredDaySell').val()
            };
            $.ajax({
                url: "/product/sell-sucess",
                type: "POST",
                contentType: "application/json",
                processData: false,
                data: JSON.stringify(payload),
                complete: function (data) {
                  $("#printReceipt").click(function () {
                    $("#nameClientReciept").html(nameClient);
                  });
                }
            });
        });
    });

这是我的输出结果。

<h2 class="left-align white-text person-name" id="nameClientReciept"></h2>

1 个答案:

答案 0 :(得分:3)

没有名为nameClient的变量,您所拥有的是对象的属性,即它是payload.nameClient
但是,您的代码表明存在具有该ID的元素

nameClient: $('#nameClient').val(),

当你做的时候

$("#nameClientReciept").html(nameClient);

你真正做的是

$("#nameClientReciept").html(window.nameClient);

这确实是一个元素,因为元素作为属性添加到全局对象中,基于它们的名称/ id 你想要的可能只是

$("#nameClientReciept").html(data);

作为旁注,您不应该将事件处理程序放在事件处理程序中,就像您一样。