2012-11-08 382 views
0

例如,如果選擇id="chocolate-yes"id="vanilla-yes"的選項,則也會選擇帶有id="icecreamcone-yes"的選項。選擇選項將強制選擇其他選項

正如您在下圖中看到的,當您選擇id="chocolate-yes"的選項時,<select id="icecreamcone">將被禁用。

如果未選擇id="chocolate-yes"id="vanilla-yes",則不會禁用id="icecreamcone-no"的選項。

爲了把它在簡單的話:你總是需要有一個蛋卷冰淇淋,如果你想添加香草或巧克力冰淇淋,用灑除外:)


任何人知道一個Javascript可以做到這一點?

注1:id="sprinkles-yes"選項不會影響id="icecreamcone-yes"
注意2:在選擇id="vanilla-yes"id="chocolate-yes"之前,仍需要選擇id="icecreamcone-yes"
注3:id名稱不能更改,也不能爲元素添加更多屬性。
注意4:不能使用jQuery。


<ul id="icecream" style="list-style:none;line-height:30px;"> 
    <li> 
    <select id="icecreamcone"> 
     <option value="addicecreamcone">Would you like an ice cream cone?</option> 
     <option id="icecreamcone-yes" value="yes">Yes</option> 
     <option id="icecreamcone-no" value="no">No thanks</option> 
    </select> 
    </li> 
    <li> 
    <select id="vanilla"> 
     <option value="addvanilla">Would you like to add vanilla ice cream?</option> 
     <option id="vanilla-yes" value="yes">Yes</option> 
     <option id="vanilla-no" value="no">No thanks</option> 
    </select> 
    </li> 
    <li> 
    <select id="chocolate"> 
     <option value="addchocolate">Would you like to add chocolate ice cream?</option> 
     <option id="chocolate-yes" value="yes">Yes</option> 
     <option id="chocolate-no" value="no">No thanks</option> 
    </select> 
    </li> 
    <li> 
    <select id="sprinkles"> 
     <option value="addsprinkles">Would you like to add sprinkles on top?</option> 
     <option id="sprinkles-yes" value="yes">Yes</option> 
     <option id="sprinkles-no" value="no">No thanks</option> 
    </select> 
    </li> 
</ul> 

回答

0

使用jQuery

$('#icecreamcone').change(function() { 
alert("There has been a change"); 
//Use Javascript to disable. 
}); 

替換#icecreamcone與你正在尋找監測變化事件的元素的選擇ID。

唯一需要注意的是禁用的表單元素不會提交,因此將該值存儲在隱藏的輸入標記中以提交它們。

0

好了,這樣的事情可能會幫助您:

​$("select")​.change(function() { 
    if ($("#vanilla").val() == "yes" || $("#chocolate").val() == "yes") 
     $("#icecreamcone").val("yes"); 
    else 
     $("#icecreamcone").val("addicecreamcone"); 
});​ 

,您可以嘗試here

+0

偉大的作品,除了兩個問題:不能使用jQuery在這個例子中,我不能選擇「冰淇淋 - 是「,然後選擇」香草 - 是「或」巧克力 - 是「。 – Macchiato

相關問題