2013-05-11 64 views
2

我95%在那裏寫了一個HTML5'必需'屬性後備,我有一個小問題,我已經走到了盡頭在我的知識道路上!如何檢測一個組中的一個單選按鈕是否與jQuery一起被選中

什麼作用: 檢測'必需'屬性,循環和以幾種方式警告用戶(在提交併將數據輸入到字段中)。

問題: 我正在進一步表單,並希望使複選框和單選按鈕也是必需的。通過這樣做,我需要爲每個收音機/複選框添加必需的屬性。我需要了解如何區分這組按鈕,因爲您目前需要勾選/取消選中要同意的表單的兩組按鈕,並讓您提交。所以簡而言之,我有三個必需的無線電,例如,每個都需要打勾,我怎麼能檢測,而循環通過輸入時,一個所需的無線電/檢查打勾 - 我認爲這將通過匹配'名稱'屬性,並且如果名稱組中沒有選中,則只提示一個錯誤。

下面是我的循環的狀態,你可以看到我也檢測輸入類型,只是不確定接下來的步驟。如果有人願意提供幫助,jsFiddle也在下面。非常感謝。

// loop through class name required 
    $('.required').each(function() { 

     // this 
     var self = $(this) 

     // check shorthand if statement for input[type] detection 
     var checked = (self.is(':checkbox') || self.is(':radio')) ? self.is(':not(:checked)') : false 

     // run the empty/not:checked test 
     if (self.val() === '' || checked) { 

      // show error if the values are empty still (or re-emptied) 
      // this will fire after it's already been checked once 
      self.siblings('.form-error').show() 

      // stop form submitting 
      e.preventDefault() 

      // if it's passed the check 
     } else { 

      // hide the error 
      self.siblings('.form-error').hide() 

     } 

    }) 

這裏是我的jsfiddle:http://jsfiddle.net/zykF9/

+0

我不喜歡這樣http://jsfiddle.net/mplungjan/VRC6L/ - 但你測試使用了一臺收音機的值是( 「:勾選」)VAL()。你應該什麼也得不到 – mplungjan 2013-05-11 16:25:32

+0

好的問題,+1 – Senjai 2013-05-11 16:25:52

回答

0

用類選擇,你可以將其存檔 http://jsbin.com/owokuw/1/edit

UPDATE 

,使更容易理解,這裏更新:

<input type="radio" name="myradio" class="myradio" /> 
<input type="radio" name="myradio" class="myradio" /> 
<input type="radio" name="myradio" class="myradio" /> 
<input type="radio" name="myradio" class="myradio" /> 
    <input type="hidden" id="selectedRadioYes" /> 
    <input type="button" id="botton" value="Botton" /> 

的Jquery

$(".myradio").click(function(){ 
$("#selectedRadioYes").val(1); 
}); 




$("#botton").click(function(){ 
    if($("#selectedRadioYes").val() === "1") 
    alert("you can go on"); 
    else 
    alert("need select one radio"); 

}); 

http://jsbin.com/owokuw/2/edit

相關問題