2012-09-14 46 views
0

SO基本上我试图在html网页上创建一个按钮,使用或检查两个下拉列表中的值,并相对于它将链接到相应的页面。 但IF语句不似乎工作...html onClick条件链接

我试着用常规的href链接但这didnt好下场的,如When to use onclick in HTML?

这里是我的代码:

<select name="Module"> 
<option value="Module 10">Module 10</option> 
<option value="Module 11">Module 11</option> 
<option value="Module 20">Module 20</option> 
<option value="Module 60">Module 60</option> 
<option value="Module 70">Module 70</option> 
<option value="Module 85">Module 85</option> 
</select> 


<select name="Sector"> 
<option value="Sector1">Sector1</option> 
<option value="Sector2">Sector2</option> 
<option value="Sector3">Sector3</option> 
<option value="Sector4">Sector4</option> 
</select> 


<FORM> 
<INPUT type="button" value="OK" 
onClick="if ((Module=='Module 10') && (Sector=='Sector1)) {location.href='M10_S1.html'}"> 
</FORM> 

回答

2

这应该是你想要什么:

<form> 
<select name="Module"> 
<option value="1">Module 1</option> 
<option value="2">Module 2</option> 
<option value="3">Module 3</option> 
<option value="4">Module 4</option> 
<option value="5">Module 5</option> 
<option value="6">Module 6</option> 
</select> 


<select name="Sector"> 
<option value="1">Sector1</option> 
<option value="2">Sector2</option> 
<option value="3">Sector3</option> 
<option value="4">Sector4</option> 
</select> 

<input type="button" value="Confirm" onClick="location.href='./M' + Module.value + '_S' + Sector.value + '.htm'"> 
</form> 

文件名的格式为 “M#_S#热媒”

+0

所以如果我使用这个,并选择模块10和甲板1 它会链接我; ./mModule 10_dDeck 1.htm? 还是./m是一个特殊字符? – Mitchb

+1

它正在从'选项'的'value'而不是'innerText'中取值。因此,对于您使用的示例:将使用“10”和“1”它将它们放入已定义的“M”和“_d”的链接中。在链接而不是选项中定义它的原因纯粹是效率。 – Rhyono

+0

是的,重新阅读它,并注意到vlaue的变化。这非常有效,谢谢! – Mitchb