2012-07-19 133 views
0

我有一個表格,像這樣的動態搜索參數基於下拉選擇

<form name="search" class="form-search" method="get" action="http://www.websitehere.com/search.php?"> 
<div> 
<input name="search" type="text" class="search-query input-large" onkeypress="return submitenter(this,event)"> 
<button type="submit" class="btn btn-primary">Search</button> 
</div> 

當Option2,就像這樣:

<form name="search" class="form-search" method="get" action="http://www.websitehere.com/search.php?"> 
<div> 
<input name="searchbynum" type="text" class="search-query input-large" onkeypress="return submitenter(this,event)"> 
<input type="hidden" name="searchbydesc" value="" /> 
<input type="hidden" name="Submit" value="Go" /> 
<button type="submit" class="btn btn-primary">Search</button> 
</div> 

所以沒有等等與其他選項。我明白,在這裏需要一點Javascript,但我不知道(我知道基本的HTML和CSS,沒有太多的Javascript)。我將不勝感激這個話題的任何幫助。

+0

什麼是您submitenter方法嗎? – frosty 2012-07-19 22:51:19

回答

0

看看使用document.createElement()

你應該能夠做到:

<script> 
function addInputs() { 
    var input = document.createElement("input"); 
    document.getElementById("frm").appendChild(input); 
} 
</script> 

<form id="frm"> 
<select onchange="addInputs()" id="sel"> 
<option>Option 1</option> 
</select> 
</form> 
+0

這增加了一個新的文本輸入 - 我希望它改變現有的文本輸入。另外,我如何使表格參考正確的Option的搜索參數? – knrz 2012-07-19 23:17:09

+0

要更改現有的文本輸入,您可以修改其屬性。例如在addInputs()中,您可以執行如下操作: document.getElementById('input')。value =「foo」; document.getElementById('input')。className =「barClass」; 這應該列出HTML4中的可用屬性:http://www.w3schools.com/jsref/dom_obj_text.asp HTML5也提供了許多整潔的東西。 要引用選項值,可以使用select.option [select.selectedIndex] 這將顯示select的可用屬性:http://www.w3schools.com/jsref/dom_obj_select.asp – 2012-07-20 03:55:47