2013-02-22 58 views
0

我想強制用戶給出答案,如果它是'必需的EQ true'。 這是我的形式。無法驗證未經檢查的單選按鈕

<p><span class="badge <cfif attributes.required EQ 1>badge-important</cfif>">#attributes.step#</span> <b>#attributes.question#</b></p> 
    <fieldset> 
    <div> 
     <!--- <span class="span1"></span> ---> 
    <cfif attributes.yesno> 
     <label class="radio"> 
      <input type="radio" name="#attributes.type#_#attributes.id#" id="question_#attributes.id#_yes" value="1">Yes 
     </label> 
     <label class="radio"> 
      <input type="radio" name="#attributes.type#_#attributes.id#" id="question_#attributes.id#_no" value="0">No 
     </label> 

我試過這個,但似乎沒有工作。誰能幫我嗎?

<script type="text/javascript"> 
      if($('radio').not(':checked')) { 
      alert("you must answer this questions"); 
      } 
</script> 
+3

你嘗試包裹在的document.ready?由於沒有事件處理程序,它只能在頁面加載中運行! – adeneo 2013-02-22 16:33:47

+0

不僅如此,而且您應該只在用戶嘗試提交表單後運行此腳本。 – 2013-02-22 16:34:57

+0

我正在以相同的形式執行此代碼段。 – 2013-02-22 17:27:21

回答

0

你的jQuery選擇是錯誤的,使它像

if($('input[type=radio]').not(':checked')) { 
    alert("you must answer this questions"); 
} 
+0

感謝您的回答,但它不起作用。 – 2013-02-22 17:28:39

+0

嗯,它適用於我。選擇器以及條件。 可能還有一些其他問題。你是否嘗試打印控制檯,如果找到元素? 也嘗試'$('input [type = radio]:not(:checked)')' – 2013-02-22 18:22:45