[英]jQuery Click Function: Show Div Based on Previous Radio Button Selection
[英]Using jquery to enable div on a page based on a radio button selection
如果使用 jquery 從單選按鈕中選擇是或否,我希望能夠啟用 div。 默認是頁面加載時不顯示 div。 當您現在 select 一個單選按鈕時,它會確定顯示哪個 div。
html 代碼如下所示
<html>
<head>Testing</head>
<body>
<p>Are you 70 years and older? <input type="radio" value="yes" name="myradiobutton" /> Yes <input type="radio" value="no" name="myradiobutton" /> No</p>
<div style="display: none" id="yes">
<p>Yes was selected</p>
</div>
<div style="display: none" id="no">
<p>No was selected</p>
</div>
</body>
</html>
我做了很長時間 jquery 但想知道如何使用下面的 jquery 打開和關閉它。 我怎樣才能寫這個,以便我能夠通過 jquery 控制每個 div 上的 styles(根據單選按鈕選擇打開和關閉它)?
$(".myradiobutton").click(function(){
var selectedval = $("#myradiobutton input[type='radio']:checked").val();
if(selectedval == "yes"){
//show the yes div
}
if(selectedval == "no"){
//show the no div
}
});
Id 必須是唯一的..您只能將它用於一個元素..您可以將相同的 class 用於divs
,因此您可以將它們都隱藏在一個選擇中..您也可以使用這樣的代碼而不是使用 if聲明..我更喜歡使用change
事件而不是click
收音機,復選框,select
$("[name='myradiobutton']").on('change', function(){ var selectedval = $("input[type='radio'][name='myradiobutton']:checked").val(); $('.just_test').hide(0).filter('#'+selectedval).show(); });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <p>Are you 70 years and older? <input type="radio" value="yes" name="myradiobutton" /> Yes <input type="radio" value="no" name="myradiobutton" /> No</p> <div style="display: none" class="just_test" id="yes"> <p>Yes was selected</p> </div> <div style="display: none" class="just_test" id="no"> <p>No was selected</p> </div>
不要忘記在 html 的divs
中添加class="just_test"
您嘗試使用#myradiobutton
作為查詢選擇器,但#
表示您的 HTML 代碼中沒有的元素的id
屬性。
要修復它,您不能讓兩個<input type="radio">
元素都使用myradiobutton
作為id
。
取而代之的是,我的建議是使用<label>
來表示<input>
s。
下面的例子:
<input type="radio" name="age" value="yes" id="older-than-70">
<label for="older-than-70">Yes</label>
<input type="radio" name="age" value="no" id="younger-than-70">
<label for="younger-than-70">No</label>
<input>
元素使用屬性id
來標識自己,並使用屬性name="age"
與其他<input>
進行分組。<label>
元素使用屬性for
作為指向具有匹配id
的<input>
的指針。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.