我有問題來顯示/隱藏選擇選項時,輸入文本更改。 我已創建[這裏]一個示例:http://jsfiddle.net/gr09tkwb/jquery輸入文本更改顯示/隱藏選擇選項
下面是HTML:
<input type="text" name="f1" id="f1" />
<select name="f2" id="f2">
<option>Select</option>
<option id="id1">id1</option>
<option id="id2">id2</option>
<option id="id3">id3</option>
<option id="id4">id4</option>
</select>
這裏是腳本:
$("#f1").on("change",function(){
var e=$("#f2").val();
var t=$("#f1").val();
var n=8.25;
var r=2.5;
var i=.5;
var s=t>10;
var u=t>n&&t<=10;
var a=t>r&&t<=n;
var f=t<=r&&t>i;
if(s){
$("#id2,#id3,#id4").remove().end();
$('<option id="id1">id1</option>').appendTo(s)
}else if(u){
$("#id3,#id4").remove().end();
$('<option id="id1">id1</option><option id="id2">id2</option>').appendTo(u)
}else if(a){
$("#id4").remove().end();
$('<option id="id1">id1</option><option id="id2">id2</option><option id="id3">id3</option>').appendTo(a)
}else if(f){
$().remove().end();
$('<option id="id1">id1</option><option id="id2">id2</option><option id="id3">id3</option><option id="id4">id4</option>').appendTo(f)
}
});
當我輸入數字20,其是 's' 的(大於10),選擇選項顯示id1。好。
當我輸入數字9,即'u'(大於8.25 & & < = 10)時,選擇選項仍然顯示id1。
但是,加載頁面並輸入數字9,它顯示id1和id2,這是正確的。現在再次輸入數字20,它只顯示id1。它似乎工作得很好。
問題:
時輸入一個數字,比我以前輸入的,它的作品數量多;但如果輸入的數字小於先前輸入的數字,則不會改變。
請看看,謝謝。
您可以發佈該計劃的目的是什麼? – jcera 2014-11-04 00:35:00
嗨,這是一個基於重量輸入的盒子選擇器。 – John 2014-11-04 00:57:36
我們需要更多的細節,有什麼用例?場景來處理? – jcera 2014-11-04 01:10:31