我可以从文本区域获取文本/值。但是我试图从表单中获取输入。我读过很多文章尝试不同的方法,但是我只能从textarea中获得一个值/文本。

尝试序列化,得到相同的结果。我有一个味精可以打印出来,我的NodeJS服务器在控制台上吐出同样的结果。我试过使用类而不是ID。尝试向客户添加type =“ text”无效。尝试使用JSON.stringify且不带日期和日期。输入字段不起作用吗?我正在使用JQuery 3.1.1

回复说:{日期:”,客户:“”””,注释:“注释在这里”}

<form name="loginForm" method="post" action="/sendReturnForm" id="returnForm">

        <p>Date:</p>
        <input type="date" name="formDate" id="formDate"/>
        <p>Customer:</p>
        <input name="formCustomer" id="formCustomer"/>
        <p>Notes:</p>
        <textarea rows="5" cols="40" id="notes">Notes go here</textarea>
</form>

<script language="JavaScript">
    $(document).ready(function () {
        var values = {
            date: $("#formDate").text(),
            customer: JSON.stringify($("#formCustomer").text()),
            notes: $("#notes").text()
        };

        $(".submitButton").click(function () {
            $.ajax({
                url: '/sendReturnForm',
                type: 'POST',
                data: JSON.stringify(values),
                contentType: 'application/json; charset=utf-8',
                dataType: 'json',
                async: false,
                success: function (msg) {
                    alert(JSON.stringify(values));
                }
            });
        });
    });
</script>

最佳答案

单击提交按钮时,您需要收集数据:

$(".submitButton").click(function (event) {
    event.preventDefault();
    var values = {
        date: $("#formDate").val(),
        customer: JSON.stringify($("#formCustomer").val()),
        notes: $("#notes").text()
    };
    $.ajax({
        url: '/sendReturnForm',
        type: 'POST',
        data: JSON.stringify(values),
        contentType: 'application/json; charset=utf-8',
        dataType: 'json',
        async: false,
        success: function (msg) {
            alert(JSON.stringify(values));
        }
    });
});

10-05 23:11
查看更多