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();
    }
});​​​​​​