我有选择列表中的选项列表,也有我选择时包含选项值的文本字段。 我想使textfield禁用为默认,当我选择其中一个选项 - 文本框将被启用。 有人可以指导我一个类似的例子吗?禁用文本字段,直到从选择列表中选择选项
感谢
我有选择列表中的选项列表,也有我选择时包含选项值的文本字段。 我想使textfield禁用为默认,当我选择其中一个选项 - 文本框将被启用。 有人可以指导我一个类似的例子吗?禁用文本字段,直到从选择列表中选择选项
感谢
下面是使用普通的JavaScript jsfiddle一个例子:
HTML:
<select id='myselect'>
<option value='none'>none</option>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
</select>
<input type='text' value='' name='mytext' id='mytext' disabled />
<button value='add' id='addbtn' name='addbtn'>add</button>
我们开始禁用输入文本框。
var myselect = document.getElementById('myselect');
function createOption() {
var currentText = document.getElementById('mytext').value;
var objOption = document.createElement("option");
objOption.text = currentText;
objOption.value = currentText;
//myselect.add(objOption);
myselect.options.add(objOption);
}
document.getElementById('addbtn').onclick = createOption;
myselect.onchange = function() {
var mytextfield = document.getElementById('mytext');
if (myselect.value == 'none'){
mytextfield.value = '';
mytextfield.disabled = true;
}else {
mytextfield.value = myselect.value;
mytextfield.disabled = false;
}
}
使用在以前的帖子我们基本上添加一个onchange状态来选择标记,以便当一个选项被选中,我们设置文本框的值到当前选定的内容,然后基本上树立的榜样文本字段的禁止虚假。因此,选择选项时启用文本字段。另外,我添加了一个名为'none'的选项,所以当用户选择none时,它会对文本字段进行分页。
$(function() {
var $select = $('#idForSelectBox'),
$textarea = $('#idForTextarea'),
status;
$select.bind('change', function() {
// If the value of the select box matches "Whatever you want"
// set status to '', else set status to 'disabled'
status = ($(this).val() === 'Whatever you want') ? '' : 'disabled';
$textarea.attr('disabled', status);
});
});
以防万一OP不知道这是jQuery解决方案,它需要jQuery框架 – kjy112
优秀,很好,谢谢... – firestruq