2010-09-29 54 views
0

可能重複: jQuery custom validation method issuejQuery驗證不工作的onchange

我有需要選擇列表。它正在驗證正常,但在更改選擇值時不會刪除錯誤消息。我不知道爲什麼,我之前使用過相同的代碼,而沒有這個問題。

的HTML:

<table border="0" cellspacing="0" cellpadding="0" class="menu"> 
    <tr> 
     <form action="PHP/Nt6Subscribe.php" method="post" id="SinglePmnt"> 
      <td width="211"> 
       <select name="technology" class="select"> 
       <option value="" selected="selected">&nbsp;Please Select</option> 
       <option value="Interactive Brokers">&nbsp;Interactive Brokers</option> 
       <option value="MB Trading">&nbsp;MB Trading</option> 
       <option value="Patsystems">&nbsp;Patsystems</option> 
       <option value="PFG">&nbsp;PFG (Peregrine Financial)</option> 
       <option value="TD AMERITRADE">&nbsp;TD AMERITRADE</option> 
       <option value="Trading Technologies">&nbsp;Trading Technologies</option> 
       <option value="Vision Financial Markets">&nbsp;Vision Financial Markets</option> 
       <option value="Hosted">&nbsp;Zen-Fire</option> 
       </select> 
      </td> 

      <td width="189">Single Payment of $995</td> 

      <td width="211"> 
       <input type="hidden" name="item_number" value="34"> 
       <input type="submit" value="" class="orderNow" /> 
      </td> 
     </form> 
    </tr> 
</table> 

的JavaScript代碼:

<script type="text/javascript"> 
    $(document).ready(function() { 
     var validator = $("#SinglePmnt").validate({ 
      rules: { 
        technology: { 
         required: true 
        } 
      }, 
      messages: { 
        technology: { 
          required: "Please select your broker technology" 
        } 
      }, 
      errorElement: "span", 
      errorPlacement: function(error, element) { 
       error.appendTo(element.parent("td")); 
      } 
     }); 
    }); 
</script> 

綜上所述,當你把它留在「請選擇」,它沒有價值,當你點擊提交驗證。如果您更改該值,則錯誤不會像應該那樣消失。

回答

0

我相信你需要在選擇技術選擇字段

+0

我相信它通過名稱屬性,無論如何,我笑了,我添加了ID,它仍然不會刪除錯誤消息onchange。 thx – 2010-09-29 21:08:45

+0

嗯,也許它有一個問題,因爲它的選擇。我從來不是那個驗證者的忠實粉絲。你可以嘗試驗證長度以確保它的長度大於0嗎? – Ascherer 2010-09-29 21:12:17

0

一個id嘗試強制驗證在模糊事件。

$('#singleTech').blur(function(){ 
    $('#SinglePmnt').validate().element('#singleTech'); 
}); 

jQuery change() on <select> and firefox

先前發佈的活鏈接似乎在IE工作,但不是Firefox瀏覽器。

+0

thx再次給我一槍。 – 2010-09-29 23:20:28

+0

你有什麼版本的驗證器?您的實時鏈接不適用於FireFox,僅限IE。但是,如果我將您的選擇複製到我的網站(我想測試模糊),它在任何更改之前都可以使用。 – RememberME 2010-09-30 16:19:35