2016-09-28 40 views
0

我有2个文本框在form.I不想允许ajax url提交,如果任何验证是false.How我可以实现this.I dont对jquery非常了解。请帮忙。如果验证为false,请不要允许ajax url提交

<div class="coupon" style="display:none;">        
    <input type="text" class="coupon-name" name="fullname" id="fullname"> 
    <span class="name-error"></span> 
    <input type="text" class="coupon-email" name="email" id="email"> 
    <span class="email-error"></span> 
    <button type="submit" value="status_add" name="status_add" id="add-status" onclick="checkStatus()">Apply</button> 
</div> 

<script type="text/javascript"> 
function checkStatus(){ 
     var fullname = $(".coupon-name").val(); 
     var email = $(".coupon-email").val(); 

     if(fullname == ''){ 
      $('input[name="fullname"]').next('span').text('Please Enter Your Name'); 
     } 
     if(email == ''){ 
      $('input[name="email"]').next('span').text('Please Enter a Email Id'); 
     }        

     $.ajax(
     { 
      url  : "<?php echo base_url('myaccount/validate/'); ?>", 
      type : "POST", 
      data : {fullname: fullname,email:email} , 
+0

'如果(全称&&电子邮件){$阿贾克斯(...); }' –

+0

如果条件为if(fullname ==''){if(input [name =“fullname”]')。next('span')。text('请输入您的姓名');返回false; } – JYoThI

+0

'if(fullname ==''){your code; 返回false; }' – devpro

回答

2

没有花太多的时间在你的代码,不知道是否有任何其他错误,但可能你应该把ajax的部分在“其他”条件,否则将被每次做,独立于两个if条件的结果。

+0

在ajax中,我正在检查验证和其他条件。但首先,我希望没有任何文本框应该为空。 – Snehal

2

试试这个,

使用return false;

var fullname = $(".coupon-name").val(); 
     var email = $(".coupon-email").val(); 
     var error=0; 
     if(fullname == ''){ 
      $('input[name="fullname"]').next('span').text('Please Enter Your Name'); 
     error=1; 
     } 
     if(email == ''){ 
      $('input[name="email"]').next('span').text('Please Enter a Email Id'); 
     error=1; 
     } 

     if(error>0){ 
     return false; 
     } 
2

你应该在的checkStatus使用布尔标志。

function checkStatus(){ 
    var fullname = $(".coupon-name").val(); 
    var email = $(".coupon-email").val(); 

    var isValidate = true; 

    if(fullname == ''){ 
     isValidate = false; 
     $('input[name="fullname"]').next('span').text('Please Enter ..'); 
    } 
    if(email == ''){ 
     isValidate = false; 
     $('input[name="email"]').next('span').text('Please Enter a Email'); 
    }        

    if (!isValidate) { return;} 

    //ajax request 
} 
0

您可以使用此:<input type="button" /> <form id="form" method="post" action="xxxxx.php">

,如果你的js代码OK,然后这样做:$('#form').submit();