Javascript HTML设置选择时的默认文本
我有一个表单的Javascript HTML设置选择时的默认文本,javascript,jquery,html,Javascript,Jquery,Html,我有一个表单的select元素: <select id="test" name="test"> <option value="blah">Test1</option> <option value="blah">Test2</option> . <option value="blah">Testn</option> </select> 测试1 测试2 . 测试 我想显示文本“选择测试”作为默认值。
select
元素:
<select id="test" name="test">
<option value="blah">Test1</option>
<option value="blah">Test2</option>
.
<option value="blah">Testn</option>
</select>
测试1
测试2
.
测试
我想显示文本“选择测试”作为默认值。
我知道这样做的方法是设置一个新的选项
<option selected="selected">Select a test</option>
选择一个测试
在顶端。但我正在寻找其他不必使用标签的方式。
是否可以通过javascript(jQuery也可以)?这里有一个简单的js解决方案:
var selecttest = document.querySelector('#test');
selecttest.insertBefore(new Option('select a test'),selecttest.firstChild);
selecttest.selectedIndex = 0;
我以前做过一个虚拟条目 HTML
<select id="test" name="test">
<option value="0">Select an option...</option>
<option value="blah">Test1</option>
<option value="blah">Test2</option>
<option value="blah">Test3</option>
<option value="blah">Test4</option>
<option value="blah">Test5</option>
</select>
下面是一个关于JSFIDLE的工作示例
“选择一个选项”选项将在您选择其他选项后立即删除。您可以访问选项数组,并使用新的选项元素预先添加选项。不添加新选项元素的原因?问题是,此选择的值被发送到其他人编写的多个php脚本。他没有添加空值或空值的检查,我必须更改很多代码。
$("#test").on("change", function() {
if ($(this).val() != "0") {
$("option[value=0]", this).remove();
}
});