2016-03-30 95 views
2

我使用ajax驗證在URL領域,我得到正確的消息(來自數據庫的檢查之後),但仍形式提交AJAX驗證在形式上不工作提交

我想,如果我得到一個無效的消息,則表格不應該提交,我該怎麼做?

<script> 
    $(document).ready(function(){ 
     $("#Url").blur(function() { 
      var element = $(this).val(); 
      $.ajax 
      ({ 
       url: "<?php echo site_url('Welcome/check_user_status'); ?>", 
       type: 'POST', 
       data: "url="+element, 
       success: function(data){ 
        alert(data); 
        $('#emailInfo').html(data); 

        if(jQuery.trim(data) === "Emailvalid") 
        { 
         alert("Emailvalid"); 

        } 

        else 
        { 
         alert("Email Invalid"); 
        } 
        console.log(data); 
       } 

      }); 
     }); 
     // return false; 
    }); 
</script> 
+0

把'返回false;' –

+0

我沒有,但仍然無法正常工作 – Ritu

+0

您在控制檯中收到的錯誤 –

回答

0
<form name="myForm" id="myForm"> 


<script> 
    $(document).ready(function(){ 
     $("#Url").blur(function() { 
      var element = $(this).val(); 
      $.ajax 
      ({ 
       url: "<?php echo site_url('Welcome/check_user_status'); ?>", 
       type: 'POST', 
       data: "url="+element, 
       success: function(data){ 
        alert(data); 
        $('#emailInfo').html(data); 

        if(jQuery.trim(data) === "Emailvalid") 
        { 
         alert("Emailvalid"); 

        } 

        else 
        { 
         alert("Email Invalid"); 

        $("form").submit(function(e){ 
         e.preventDefault(); 
        }); 
        } 
        console.log(data); 
       } 

      }); 
     }); 
     // return false; 
    }); 
</script> 
0

你的測試被放置在成功回調,這是發射$.ajax()呼叫已成功發佈和接收的數據的響應。無論你放在那裏,只有在表格已被提交後纔會發生

如果您正在嘗試驗證之前您的POST,您需要單獨添加。根據您需要的驗證類型,您可以編寫自己的簡單測試,或使用插件 - jQuery Validation是一個不錯的選擇。

+0

我做了這個, 在其他部分,我只放了一行和它的工作 「jQuery('#Url')。val('');」 – Ritu

0

在頁腳文件

<script> 
var burl="<?php echo base_url('') ?>"; 
var surl="<?php echo site_url('') ?>"; 
</script> 

添加這個,然後使用這個SURL Ajax的網址... 這樣

<script> 
    $(document).ready(function(){ 
     $("#Url").blur(function(e) { // add e 
      e.preventDefault();// prevent other events 
      var element = $(this).val(); 
      $.ajax 
      ({ 
       url: surl+"Welcome/check_user_status", 
       type: 'POST', 
       data: {"url":element}, // check the change 
       success: function(data){ 
        if($.trim(data) === "Emailvalid"){ // instead of jQuery use $ 
         alert("Emailvalid"); 
         $('#emailInfo').html(data); // put here 

        }else{ // remove the space between if and else 
         alert("Email Invalid"); 
         return false; // add here 
        } 
        console.log(data); 
       } 
      }); 
     }); 
    }); 
</script> 
在其他條件