2015-03-19 19 views
1

我需要在遠程方法中添加if條件,因此對於沒有$('#emailUrl')。val()的表單,將落入else條件如何編寫if和else在jquery遠程驗證

rules : {   

    lastName : { 
     required : true, 
     namevalidation : true 
    }, 
    // Remote is the jquery function to check unique character using URL 
    primaryEmailId : { 
     required : true, 
     email : true, 
     remote : { 
      // If Condition required here. Please suggest me 
      url : $('#emailUrl').val(), 
      data: { 
       primaryEmailId: function() { 
        return $("#primaryEmailId").val(); 
       }, 
      } 
     }, 
    } 
} 

回答

3

你需要做的是在遠程規則中使用dependsparam。它們在documentation中有所描述,但不清楚它是否適用於遠程(它確實!)。

所以把你的例子,你會返工它看起來像這樣:

primaryEmailId : { 
    required : true, 
    email : true, 
    remote : { 
     //if this returns true, remote will be triggered 
     depends: function(){ 
     return $('#emailUrl').val() != ''; 
     }, 
     //using these parameters 
     param: { 
     url : 'your validation url.php', 
     data: { 
      primaryEmailId: function() { 
       return $("#primaryEmailId").val(); 
      }, 
     } 
     } 
    }, 
} 

我不上就是爲什麼你要撥打不同的URL取決於用戶明確的唯一的一部分?希望重要的部分更多關於如何調用遠程或不:)

Working example(請注意,jsfiddle有點怪異的AJAX調用,所以我有點複雜)。

0

你不能在條件上的URL,你需要定義的功能,然後需要把條件。我不確定如果您傳遞空白URL進行遠程驗證會發生什麼情況。請檢查以下解決方案。

lastName : { 
        required : true, 
        namevalidation : true 
       }, 
       // Remote is the jquery function to check unique character using URL 
       primaryEmailId : { 
        required : true, 
        email : true, 
        remote : { 
         // If Condition required here. Please suggest me 
         url : function(){ 
         if (typeof ($('#emailUrl').val()) != 'undefined') 
          { 
           return $('#emailUrl').val(); 
          } else { 
           return ''; 
          } 

         }, 
         data: { 
          primaryEmailId: function() { 
              return $("#primaryEmailId").val(); 
             }, 
            } 
          }, 
       }, 
+0

你試過嗎?我不相信'.post'的'url'字段接受一個函數,而是將它視爲一個字符串。 – Ryley 2015-03-19 19:44:21

+0

它不起作用 – HarshaKP 2015-03-20 07:54:42

+0

如果條件在JQUERY驗證中,是否可以寫入規則僅對特定字段進行驗證。請建議我 – HarshaKP 2015-03-20 07:55:58