我有一个带有2个ASP.NET文本框和一个ASP.NET下拉列表的ASP.NET页面我希望使用jQuery表单发布而不是普通的ASP.NET发布回来。任何人都可以指导我如何执行此操作?如何访问操作页面中的服务器端控件?我不想通过查询字符串传递所有内容。请指导我如何继续?提前致谢
答案 0 :(得分:3)
您可以使用简单的jQuery选择器来选择服务器端控件,假设您的页面上有以下文本框:
<asp:TextBox id="userName" runat="server" />
在jQuery中你可以像这样访问它:
var valueOfTextBox = $("input[id$='userName']").val();
//OR
var valueOfTextBox = $("input[id$='userName']").attr("value");
如果页面上的控件很少,那么这种技术是可以的,但对于大型表格,请改用:
var valueOfTextBox = $("#<%= userName.ClientID %>").val();
//OR
var valueOfTextBox = $("#<%= userName.ClientID %>").attr("value");
正如Dave here所解释的那样,有巨大的性能提升。
您可以找到有关jQuery选择器语法here的更多信息。
如果您想通过jquery AJAX发布表单,请使用以下代码:
$("#form1").submit(function(){//Where form1 is your form's id
var a=$("input[id$='userName']").val();
var b=$("input[id$='userId']").val();
$.ajax({
type: "POST",
url: "yourPage.aspx",
data: "name=" + a+"&id=" + b,
success: function(msg){
alert( "Data Saved: " + msg );
}
});
});
关于jQuery AJAX的更多细节是here。
您还可以使用jquery.form插件自动执行操作。