【发布时间】:2018-05-06 11:39:41
【问题描述】:
我的 mvc 应用程序中有两个表单,所有表单都是动态显示的,如何将 ajax 调用绑定到这些表单提交按钮而不会丢失验证。 以下是我的代码。
//form1
<form id="form1" action="" method="post" enctype="multipart/form-data">
<input type="text" name="fname1" id="fname1" placeholder="Full Name">
<input type="email" name="femail1" id="femail1" placeholder="your@email.com">
<input id="send1" type="button" >
</form>
//form2
<form id="form1" action="" method="post" enctype="multipart/form-data">
<input type="text" name="fname1" id="fname1" placeholder="Full Name">
<input type="email" name="femail1" id="femail1" placeholder="your@email.com">
<input id="button2" type="button">
</form>
//Jquery code
$('#button1').click(function(e){
e.preventDefault();
var fname =$('#fname1').val();
var femail =$('#femail1').val();
var fphone =$('#fphone1').val();
var error =0;
$('#fname1,#femail1,#fphone1').css('border', '');
if(fname=='Full Name' || fname==''){
$('#fname1') .css('border','solid 1px red');
error=1;
}
var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
if(femail == 'your@email.com' || !emailPattern.test(femail)) {
$('#femail1').css('border','solid 1px red');
error = 1;
}
if(fphone=='____-_____' || fphone==''){
$('#fphone1').css('border','solid 1px red');
error=1;
}
//do ajax call
return false;
});
//jquery code for button 2
$('#button2').click(function(e){
e.preventDefault();
var fname =$('#fname1').val();
var femail =$('#femail1').val();
var fphone =$('#fphone1').val();
var error =0;
$('#fname1,#femail1,#fphone1').css('border', '');
if(fname=='Full Name' || fname==''){
$('#fname1') .css('border','solid 1px red');
error=1;
}
var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
if(femail == 'your@email.com' || !emailPattern.test(femail)) {
$('#femail1').css('border','solid 1px red');
error = 1;
}
if(fphone=='____-_____' || fphone==''){
$('#fphone1').css('border','solid 1px red');
error=1;
}
//do ajax call
return false;
});
就像我说的这些表单是动态加载的,我需要像上面那样执行 ajax 调用。
【问题讨论】:
-
请以您不要求“最好”的方式表达您的问题。描述有关您的特定问题的任何信息,提供您试图解决该问题的任何现有代码,并让人们帮助您解决您的特定问题。要求“最好的”是让帖子因固执己见或过于宽泛而被关闭的快速方法。
-
@Taplar 我正在寻求解决此问题的方法。简要描述对我有帮助,就像解决这个问题的架构视图
-
本网站旨在帮助人们解决特定代码问题,而不是建议。请查看 stackoverflow.com/help/how-to-ask 了解 Stackoverflow 需要的问题类型。在你的具体问题解决后,如果你想问有没有更好的方法,或者让其性能更好,可以在codereview.stackexchange.com上提问
-
您如何为 3 个表单注册 3 个按钮单击事件?所有这 3 个点击处理程序中的代码是否相同?
-
提示:研究 jQuery 中的委托事件
标签: jquery ajax asp.net-mvc forms asp.net-mvc-4