Я хочу сделать HTML-поле выбора с 25 опциями. После выбора я хочу с помощью командной кнопки показать окно предупреждения, показывающее тип выбора. Варианты делятся на три (3) типа:

  • Варианты 1-10 = ТИП1
  • Варианты 11-20 = ТИП2
  • ВАРИАНТЫ 21-25 = ТИП3

Ниже мой HTML-код, который не работает ...

<select id="item1" name="Item 1">
<OPTION VALUE="0"> Select...</OPTION>
<OPTION VALUE="1">option1</OPTION>
<OPTION VALUE="2"> option2</OPTION>
<OPTION VALUE="3"> option3</OPTION>
<OPTION VALUE="4"> option4 </OPTION>
<OPTION VALUE="5">option5</OPTION>
<OPTION VALUE="6">option6</OPTION>
<OPTION VALUE="7">option7</OPTION>
<OPTION VALUE="8">option8</OPTION>
<OPTION VALUE="9">option9</OPTION>
<OPTION VALUE="10">option10</OPTION>
<OPTION VALUE="11">option11</OPTION>
<OPTION VALUE="12">option12</OPTION>
<OPTION VALUE="13">option13</OPTION>
<OPTION VALUE="14">option14</OPTION>
<OPTION VALUE="15">option15</OPTION>
<OPTION VALUE="16">option16</OPTION>
<OPTION VALUE="17">option17</OPTION>
<OPTION VALUE="18">option18</OPTION>
<OPTION VALUE="19">option19</OPTION>
<OPTION VALUE="20">option20</OPTION>
<OPTION VALUE="21">option21</OPTION>
<OPTION VALUE="22">option22</OPTION>
<OPTION VALUE="23">option23</OPTION>
<OPTION VALUE="24">option24</OPTION>
<OPTION VALUE="25">option25</OPTION>
<OPTION VALUE="25">option26</OPTION>
</select>

<button onclick="message()">Find your Type</button>

<SCRIPT>

function message() {

var s = document.getElementById('item1');
var item1 = s.options[s.selectedIndex].value;

if (item1 = 1) {
    alert("Type1")
}
else if (item1 = 10) {
    alert("Type1")
}
else if (item1 = 11) {
    alert("Type2")
}
}
else if (item1 = 20) {
    alert("Type2")
}
else if (item1 = 21) {
    alert("Type3")
}
}
else if (item1 = 25) {
    alert("Type3")
}
}
</SCRIPT>

Также есть более короткий способ сделать это правильно? Спасибо!

2 ответа2

2

Я узнал, как это сделать !!!

<SCRIPT>

function between(x, min, max) {
  return x >= min && x <= max;
}

function message() {

var s = document.getElementById('item1');

if (s.value == 0) {
    alert("Please select an option!")
}
else if (between(s.value, 1, 10)) {
    alert("Type1")
}
else if (between(s.value, 11, 20)) {
    alert("Type2")
}
else if (between(s.value, 21, 25)) {
    alert("Type3")
}
}
</SCRIPT>
0

Это решит проблему.

function message(){

var x = $("#item1").selectedIndex;
var item = $("#item1 option")[x].value;

switch(item){
   case 1...10:
        alert("TYPE1");
        break;
   case 11...20:
        alert("TYPE2");
        break;
   case 21...25:
        alert("TYPE3");
        break;        
    default:
        alert("None Selected");
        console.log(item);
        break;
    }

}

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .