在JQuery中传递多个变量的最简单方法是什么?
我有一个使用JQuery Json post的表单。我在页面上有10多个文本框。我已经通过了我知道的唯一途径。。。是否有其他方法传递多个变量在JQuery中传递多个变量的最简单方法是什么?,jquery,asp.net-mvc,json,Jquery,Asp.net Mvc,Json,我有一个使用JQuery Json post的表单。我在页面上有10多个文本框。我已经通过了我知道的唯一途径。。。是否有其他方法传递多个变量 $('#nameSubmit').click(function() { var status = document.getElementById('Select2').value; var lob = document.getElementById('LOB').value; var lName = document.getElem
$('#nameSubmit').click(function() {
var status = document.getElementById('Select2').value;
var lob = document.getElementById('LOB').value;
var lName = document.getElementById('LName').value;
var fName = document.getElementById('FName').value;
var city = document.getElementById('City').value;
var state = document.getElementById('State').value;
$.post("Home/LoadTable", { Status: status, LOB: lob, LName: lName, FName: fName, City: city, State: state }, function(data) {
//...process code works
}, 'json');
});
编辑
我正在使用以下方法添加文本框和下拉列表
<%using (Html.BeginForm("Index", "Home", FormMethod.Post, new { id = "myForm" })) {%>
<td><%= Html.TextBox("LName")%></td>
<select name="Status" id="Select2">
<option value="ALL">All Policies</option>
<option value="Active">Active</option>
<option value="Cancelled">Cancelled</option>
</select>
<% } %>
所有政策
活跃的
取消
这几乎就是解决问题的方法。您可以编写一个表单序列化程序,为您生成json,但您仍然要将生成的json传递给它。以下代码将在所有文本框(但没有文本区域)上循环,并创建一个以ID为键的对象
$('#nameSubmit').click(function () {
var obj = {};
$("input:text", this.form).each(function () {
obj[this.name] = this.value;
});
$.post("Home/LoadTable", obj, function (data) { /* */ }, 'json');
});
编辑:另一个人建议使用
$().serialize()
,在这个用例中,我强烈支持这是最好的答案。将文本框放入
标记中,然后使用jQuery的serialize
方法
<form id="myForm" action="javascript:void(0);">
<input type="text" name="a" value="Input A" />
<input type="text" name="b" value="Input B" />
<input type="submit" value="Submit Form">
</form>
与Java有什么关系?@Lord.Quackstar。。。。。对不起,谢谢。。。这与Html.Textbox和下拉列表的方式相同吗?见编辑谢谢。。。这与Html.Textbox和下拉列表的方式相同吗?我很抱歉。是的。。谢谢
$('#myForm').submit(function(){
$.post("Home/LoadTable", $('#myForm').serialize(), function(data){
// code...
},'json');
});