0

是否可以使用 jquery 提交表单而无需明确设置数据。

IE。我有以下表格

<% using (Html.BeginForm("Search", "DrawingWindow", FormMethod.Get, new {id="DrawingSearch"}))
   { %>
    <div>
        <%: Html.LabelFor( m=> m.DrawingNumberName, new {@class="dark_blue"}) %>
    </div>
    <div>
        <%: Html.TextBoxFor(m=> m.DrawingNumberName)%>
        <%: Html.Submit("Search") %>
    </div>
<% } %>

我想做如下的事情:

 $('#drawingSearch').submit(function (e) {
            e.preventDefault();

            $ajax({
                url: '<%:Url.Action("Search", "PID") %>',
                type: 'GET',
            })
    });

现在,由于我没有在这里指定任何数据,我认为我不会在 ajax 请求中发送文本框,有没有办法将其包含在内,而不必给文本框一个 id 并制作一个数据对象作为请求的一部分发送?

4

2 回答 2

0

您可以将其放在表单标签中,并使用 jquery 序列化功能。

$('#drawingSearch').submit(function (e) {
    e.preventDefault();

    var data = $('#myForm').serialize();

    $ajax({
        url: '<%:Url.Action("Search", "PID") %>',
        data: data,
        type: 'GET',
    })
});

通过这种方式,您可以在表单中放置任意数量的输入字段,而不必更改 javascript/jQuery 代码。

于 2012-04-17T06:33:24.123 回答
0

或者可以在$('textarea').val()不设置id文本框的情况下获取值

$ajax({
        url: '<%:Url.Action("Search", "PID") %>',
        data: 'textVal='+$('textarea').val(),
        type: 'GET',
    })
于 2012-04-17T06:41:15.697 回答