Javascript selectbox Else If语句

时间:2013-07-20 11:23:58

标签: javascript html

这是我的JS代码。

<script type="text/javascript">
  function showfield6(name){
    if(name=='Other')
      document.getElementById('div6').innerHTML='Other: <input type="text" name="pubfer" />';
    else
      document.getElementById('div6').innerHTML='';
  }
</script>

<select name="pubfer" id="pubfer" onchange="showfield6(this.options[this.selectedIndex].value)">
  <option selected="selected">Please select ...</option>
  <option value="Thesis">Thesis</option>
  <option value="Paper">Paper</option>
  <option value="Report">Report</option>
  <option value="Short Notes">Refrigerator</option>
  <option value="Technical Notes">Technical Notes</option>
  <option value="Other">Other</option>
</select>
<div id="div6"></div>

我不能使用else if语句。

如何使用我的JS代码来使用它?

Specimen (Choose)
Bone
   Side 
    Elements
    Pathology
    Measurements  (import) excel

Teeth
   Side 
    Measurements report

Hair

如果用户选择“Specimen”,则打开字段Bone,Teeth,Hair。如果用户选择“骨骼”,则新文本字段将打开。它们的名称是“side,elements”等。如果用户选择“Teeth”,则会打开新的文本字段。

如何创建此表单?

2 个答案:

答案 0 :(得分:1)

似乎是一个学术问题,否则不会有这个“不能使用其他语句”我猜。因此,我能给你的唯一解决方案是查看switch case语句。

**编辑:关注@Stano评论,这里有关于如何使用switch case语句的更多细节。

如果变量有多个可能的值,并且想要根据该值执行代码,则可以使用切换案例。

例如,您的showfield6()函数可能如下所示:

function showfield6(id) {

  switch(id) {  //Begin swith case
    case "Bone":    //When id=="Bone"
      //Execute code block here
      break;        //If you do not add this break, the code in the next case will be executed
    case "Teeth":   //When id=="Teeth"
      //Execute code for "Teeth"
      break;
    case "Hair": 
      //Code block
      break;
    case default:   //Anything that wasnt't matched aboved (id=="SomethingElse")
      //Handle other cases here
  }

}

有关swith case语句的更多信息: http://www.w3schools.com/js/js_switch.asp

答案 1 :(得分:0)

是的,可能会对你有所帮助。看看这个。

http://www.w3schools.com/js/js_switch.asp

-Thanks