好的,即使用我的母语也难以解释,但我会尽量保持清晰。
我有一个不同选项的下拉列表。在选择其中一个之后,用户需要检查两个单选按钮中的一个,这最终会在两个不同的输入字段中产生结果。 例如 - 如果从下拉列表中选择选项2,然后选中单选按钮1,则输入一个显示一些值,输入2显示一些其他值。
<select id="single">
<option>Select an item</option>
<option data1="140x200" data2="1">80x190</option>
<option data1="140x200/220" data2="2">80x200</option>
<option data1="140x220" data2="3">80x210</option>
</select>
<input type="radio" id="radioButton1" name="radioButton" value="enkel" />
<label for="radioButton1">enkel</label>
<input type="radio" id="radioButton2" name="radioButton" value="dubbel" />
<label for="radioButton2">dubbel</label>
<input type="text" id="dekbed">
<input type="text" id="overtrek">
我有这个jsfiddle,所以也许它有助于澄清。
也许我应该为下拉列表中的每个选项提供4个属性(data1,data2,data3,data4),这样对于选定的选项,如果选中了radio1,则数据1输入#dekbed,data2输入#overtrek,data3如果选中无线电2,则输入#dekbed和data4输入#overtrek。
我希望你们明白这一点,我真的很感激这方面的帮助,因为我之前还没有见过这种选择方式。
答案 0 :(得分:0)
您可以尝试添加一个条件来检查例程中是否检查了每个单选按钮
$("#single option:selected").each(function () {
例如对于radioButton1,它将是
if ($("#radioButton1").is(':checked')){ .... do something }
如果选中了radioButton1,请将dekbed和overtrek中的值更改为data1和data2。
否则,如果选中了radioButton2
if ($("#radioButton2").is(':checked')){ .... do something different}
将dekbed和overtrek中的值更改为data3和data.4。
编辑注释:您需要将这些方法添加到选择框的更改事件和单选按钮输入中。
创建了一个演示解决方案的小提琴我希望这有帮助!