用html输出,页面上有一文本框,可以输入文本,还有一按钮,单击时可以将文本框的内容添加下拉列表中。若文本框没有内容,添加时会给出提示“请输入内容”,若要添加的内容已经在列表中,也需要提醒“已有”并将焦点定位至文本框。
时间: 2024-02-25 15:52:20 浏览: 168
好的,这是一个比较具体的编程问题,我会尽力给出详细的回答。
首先,你需要在 HTML 中添加一个文本框和一个按钮,代码如下:
```html
<input type="text" id="inputText">
<button onclick="addToList()">添加</button>
```
其中,`input` 标签的 `type` 属性设置为 `text` 表示这是一个文本框,`id` 属性为 `inputText` 用于之后的 JavaScript 操作,`button` 标签的 `onclick` 属性为 `addToList()` 表示单击按钮时调用 `addToList` 函数。
接下来,你需要编写 JavaScript 代码实现添加操作。代码如下:
```javascript
function addToList() {
var input = document.getElementById("inputText");
var value = input.value.trim();
if (value === "") {
alert("请输入内容");
input.focus();
return;
}
var select = document.getElementById("selectList");
for (var i = 0; i < select.options.length; i++) {
if (select.options[i].value === value) {
alert("已有");
input.focus();
return;
}
}
var option = document.createElement("option");
option.value = value;
option.text = value;
select.add(option);
input.value = "";
}
```
这段代码首先获取文本框的值,并使用 `trim()` 方法去除前后空格。如果值为空,则弹出提示框并将焦点定位至文本框,然后返回。如果值不为空,则遍历下拉列表,检查是否已经存在相同的选项。如果存在,则弹出提示框并将焦点定位至文本框,然后返回。如果不存在,则创建一个新的选项,并将其添加到下拉列表中,然后清空文本框的值。
最后,你需要在 HTML 中添加一个下拉列表,代码如下:
```html
<select id="selectList"></select>
```
其中,`select` 标签的 `id` 属性为 `selectList` 用于之后的 JavaScript 操作。
这样就完成了这个功能,你可以在本地运行这个代码,看看效果。
阅读全文