【发布时间】:2014-12-16 15:17:51
【问题描述】:
我有一个包含选项 1 到 10 的下拉列表。当所选项目为 10 时,下拉列表将替换为文本框内带有数字 10 的文本框。
如果用户从下拉列表中选择 10,然后清除 10 并将框留空,我想返回并重新分配在打开下拉列表之前选择的值进入文本框。
例如:如果用户在下拉列表中选择了 3,然后选择了 10,我想将 10 留在文本框中。如果值被清空了,文本框又变成了下拉,我想重新赋值给3。
这是下拉标记:
<select id='qty'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
<option value='6'>6</option>
<option value='7'>7</option>
<option value='8'>8</option>
<option value='9'>9</option>
<option value='10'>10+</option>
这里是 jQuery:
$('#qty').live('change', function () {
if ((this.value) == 10) {
$(this).replaceWith($('<input/>', {
'type': 'text',
'value': +(this.value)
}));
}
});
这里是DEMO。
【问题讨论】:
标签: javascript jquery