我在我的网站上有以下下拉菜单
<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>这目前发送文本到一个名为“消息”的文本区,但我希望每个选项的文本是不同的。有什么简单的方法可以做到这一点吗?
谢谢!
发布于 2013-07-01 18:30:56
这就是它:
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>发布于 2013-07-01 18:55:11
发送文本的是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中简单地对其进行寻址:
<form name="TemplateForm">
<select name="Templates">
<option value="#" selected>----Templates----</option>
<option value="absence">Absense</option>
<option value="laters">Lates</option>
</select>
</form>为了查看选择了什么值,我还为options元素添加了惟一的值。
https://stackoverflow.com/questions/17402229
复制相似问题