写一个点击指定的select选项,触发onchange事件把input标签更换成下拉框的代码
时间: 2023-06-02 20:01:30 浏览: 157
以下是一个示例代码:
HTML部分:
```
<select id="mySelect" onchange="changeInput()">
<option value="option1">Option 1</option>
<option value="option2">Option 2</option>
<option value="option3">Option 3</option>
</select>
<div id="inputContainer">
<input type="text" id="myInput" value="Input">
</div>
```
JS部分:
```
function changeInput() {
var selectValue = document.getElementById("mySelect").value;
var inputContainer = document.getElementById("inputContainer");
if (selectValue === "option1") {
inputContainer.innerHTML = '<input type="text" id="myInput" value="Option 1">';
} else if (selectValue === "option2") {
inputContainer.innerHTML = '<select id="myInput"><option value="option1">Option 1</option><option value="option2" selected>Option 2</option><option value="option3">Option 3</option></select>';
} else if (selectValue === "option3") {
inputContainer.innerHTML = '<select id="myInput"><option value="option1">Option 1</option><option value="option2">Option 2</option><option value="option3" selected>Option 3</option></select>';
}
}
```
在这个例子中,我们使用了一个名为 `changeInput()` 的函数来检测 `select` 元素的值,并根据值更改 `input` 元素的类型。在这种情况下,如果选项1被选中,我们将 `input` 元素更改为文本输入框,如果选项2或3被选中,我们将 `input` 元素更改为下拉框。我们使用 `innerHTML` 属性来更改 `inputContainer` 元素的内容,从而更改 `input` 元素的类型。
阅读全文