2017-07-06 122 views
0

我有一個視圖,其中添加到電子有2個單選按鈕是&沒有。並提交按鈕。當是單選按鈕被點擊。數量文本框不應該爲空。但是如果沒有單選按鈕,它可以是空的。當單擊提交按鈕時選擇是,單選按鈕被選中。此功能應該工作。任何想法? 我的看法:單擊單選按鈕時強制文本框

<HTML> 
    <head> 
    radio 
    </head> 
    <body> 
    <form id=radio> 
    Add to electronic <input type="radio" name="yes"onclick="validate(_this)"id="yes"/>Yes<input type="radio" name="yes" id="no" />No<br /> 
    <label>Quantity</label><input type="text"size="25"name="dir"id="dir" required/> 
<button type=submit name=insert>insert</button> 
</body> 
<div> 
<script src="~/Scripts/radiobuttonvalidation.js"></script> 
</div> 
</html> 

進出口新的MVC和javascript幫我javascript代碼too.and我應該用我的觀點聯繫起來的方式。 的Javascript:

function validate(_this) { 
    if ($(_this).attr('id') == "yes") { 
     $('#dir').attr('required'); 
     alert("Text Box required"); 
    } 
    else { 
     $('#dir').removeAttr('required'); 
     alert("Text Box not required"); 
    } 
} 
+0

你嘗試過這麼遠嗎? – guradio

+0

首先,使用jquery validate查看客戶端驗證,然後查看視圖模型並將[Required]屬性設置爲文本框,當您單擊表單中的提交按鈕時,這將處理驗證。現在,當點擊yes時,搜索方式,啓用文本框驗證,單擊否時,禁用文本框驗證,我只指出你能做到的方式,你應該先嚐試一下自己。 – Mindless

+0

我嘗試使用j查詢,但它沒有驗證文本框 – ashwanth

回答

1

$(function() { 
 
    $("#radio").submit(function() { 
 
    if ($('#yes').is(':checked') && !$.trim($('#quantity').val())) { 
 
     alert("Please input the quantity."); 
 
     return false; 
 
    } 
 
    }); 
 
});
<html> 
 
     <head> 
 
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
     </head> 
 
     <body> 
 
      <form id=radio> 
 
       Add to electronic <input type="radio" name="yes" id="yes" />Yes<input type="radio" name="yes" id="no" />No<br /> 
 
       <label>Quantity</label><input type="text" size="25" name="quantity" id="quantity" /> 
 
       <button type=submit name=insert>insert</button> 
 
      </form> 
 
     </body> 
 
    </html>

+0

如何在視圖中鏈接此JavaScript和單選按鈕? – ashwanth

+0

我認爲它更好地添加更改單選按鈕所需的屬性。 –

+0

您可以創建一個名爲 ... –

1

HTML Required屬性可以在這樣的情況下真的很有幫助。 查看此Link以獲取更多信息。 另外,如果您需要更多定製,請檢查Jquery Validator

<HTML> 
 
    <head> 
 
    radio 
 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
     <script> 
 
     function validate(_this) 
 
     { 
 
      if($(_this).attr('id') == "yes") 
 
      { 
 
       $('#quantity').attr('required'); 
 
       alert("Text Box required"); 
 
      } 
 
      else 
 
      { 
 
       $('#quantity').removeAttr('required'); 
 
       alert("Text Box not required"); 
 
      } 
 
     } 
 
     
 
     </script> 
 
    </head> 
 
    <body> 
 
    <form id=radio> 
 
    Add to electronic 
 
    <input type="radio" name="yes" id="yes" onchange="validate(this)"/>Yes 
 
    <input type="radio" name="yes" id="no" onchange="validate(this)"/>No<br /> 
 
    <label>Quantity</label> 
 
    <input type="text"size="25" name="quantity"id="quantity" required/> 
 
    <button type=submit name=insert>insert</button> 
 
</body> 
 
</html>

+0

我做了bro.still我沒有得到任何結果。當我點擊與單選按鈕單擊插入按鈕沒有任何反應。我的收音機和按鈕代碼:添加到電子是 
ashwanth

+0

您是否在瀏覽器控制檯中看到錯誤? –

+0

@ashwanth爲了您的方便,我已經更新了答案。 –