2013-07-01 174 views
1

我有以下的下拉菜單在我的網站HTML下拉列表中選擇

<select name="Templates" onchange="document.sendform.message.value = 'some text here'; return false;"> 
<option value="#" selected>----Templates----</option> 
<option value="#">Absense</option> 
<option value="#">Lates</option> 

</select> 

目前這將文本發送到名爲「消息」的文本區域,但是我想的文本設置爲所選的每個選項不同。有沒有簡單的方法來做到這一點?

謝謝!

+2

添加文本作爲選項值,然後將所選選項的值寫入您的textarea ... – CBroe

回答

4

這就是:

http://jsfiddle.net/sinisake/3NQH7/

<form name="sendform"> 
    <select name="Templates" onchange="document.sendform.message.value = this.value; return false;"> 
    <option value="#" selected>----Templates----</option> 
    <option value="absense">Absense</option> 
    <option value="lates">Lates</option> 

     <input type="text" value="" name="message" /> 
    </select> 
    </form> 
+0

那是偉大的感謝!完美的作品 – Leoric80

0

onchange事件處理程序是什麼發出的文本;如果您想根據所選選項的值,你應該使用更先進的事件處理程序來發送文本:

document.TemplateForm.Templates.onchange = function() { 
    var value = this.value; 
    if (value === 'absence') { 
     setMessage('Absence message'); 
    } else if (value === 'laters') { 
     setMessage('Laters message'); 
    } else { 
     setMessage('Default message'); 
    } 
    return false; 
}; 

function setMessage(message) { 
    document.sendform.message.value = message; 
} 

我包你select元素的形式,以便能夠在上面的JavaScript只是ADRESS它:

<form name="TemplateForm"> 
    <select name="Templates"> 
     <option value="#" selected>----Templates----</option> 
     <option value="absence">Absense</option> 
     <option value="laters">Lates</option> 
    </select> 
</form> 

爲了看選擇什麼樣的價值我還添加了獨特的價值爲options元素。

活生生的例子:http://jsfiddle.net/fRB3s/1/