Javascript 我需要显示文本;选择一个";默认情况下,在组合框中

Javascript 我需要显示文本;选择一个";默认情况下,在组合框中,javascript,html,drop-down-menu,selection,Javascript,Html,Drop Down Menu,Selection,我正在创建一个从JSON加载选项的组合框。它会按预期加载菜单。但是默认情况下,我需要在组合框中显示文本“selecttheone”。我试过了,但找不到解决办法你能给我一些建议吗,我怎样才能做到 window.onload = function() { var obj = JSON.parse(str); for (var i=0; i < obj.MenuParentTabs.length; i++) { var option = docum

我正在创建一个从JSON加载选项的组合框。它会按预期加载菜单。但是默认情况下,我需要在组合框中显示文本“selecttheone”。我试过了,但找不到解决办法你能给我一些建议吗,我怎样才能做到

window.onload = function() {
    var obj = JSON.parse(str);    

    for (var i=0; i < obj.MenuParentTabs.length; i++)    {
        var option = document.createElement("option");    
        option.innerHTML = obj.MenuParentTabs[i].parentTabName;
        document.form1.fruits.appendChild(option);
    }
}
window.onload=function(){
var obj=JSON.parse(str);
for(变量i=0;i
您需要在
for
循环之前创建带有所需文本的
选项

var option = document.createElement("option");
option.innerHTML = "Select the one";
document.form1.fruits.appendChild(option);
如果
选项
不是
选择
的第一个子项(即,由于某种原因,您没有将其放在
for
循环之前),还可以设置
selected
属性:

option.setAttribute("selected", "selected");
完成帮助OP的代码:

window.onload = function() {
    var obj = JSON.parse(str);    

    var option = document.createElement("option");
    option.innerHTML = "Select the one";
    option.setAttribute("selected", "selected");
    document.form1.fruits.appendChild(option);

    for (var i = 0; i < obj.MenuParentTabs.length; i++) {
        option = document.createElement("option");
        option.innerHTML = obj.MenuParentTabs[i].parentTabName;
        document.form1.fruits.appendChild(option);
    }
}
window.onload=function(){
var obj=JSON.parse(str);
var option=document.createElement(“选项”);
option.innerHTML=“选择一个”;
option.setAttribute(“选定”、“选定”);
文件.表格1.水果.附件(可选);
for(变量i=0;i
您需要在
for
循环之前创建带有所需文本的
选项

var option = document.createElement("option");
option.innerHTML = "Select the one";
document.form1.fruits.appendChild(option);
如果
选项
不是
选择
的第一个子项(即,由于某种原因,您没有将其放在
for
循环之前),还可以设置
selected
属性:

option.setAttribute("selected", "selected");
完成帮助OP的代码:

window.onload = function() {
    var obj = JSON.parse(str);    

    var option = document.createElement("option");
    option.innerHTML = "Select the one";
    option.setAttribute("selected", "selected");
    document.form1.fruits.appendChild(option);

    for (var i = 0; i < obj.MenuParentTabs.length; i++) {
        option = document.createElement("option");
        option.innerHTML = obj.MenuParentTabs[i].parentTabName;
        document.form1.fruits.appendChild(option);
    }
}
window.onload=function(){
var obj=JSON.parse(str);
var option=document.createElement(“选项”);
option.innerHTML=“选择一个”;
option.setAttribute(“选定”、“选定”);
文件.表格1.水果.附件(可选);
for(变量i=0;i
尝试在for循环之前放置类似的内容:

var option = document.createElement("option");    
option.innerHTML = "Select One";
document.form1.fruits.appendChild(option);

我也可以强烈推荐jQuery来进行此类恶作剧。

尝试在for循环之前添加类似的内容:

var option = document.createElement("option");    
option.innerHTML = "Select One";
document.form1.fruits.appendChild(option);

我也可以强烈推荐jQuery来进行此类恶作剧。

这里有一个非常类似的问题和答案:


我想如果你真的想彻底了解,你可以在菜单出现时添加隐藏此选项的内容。

这里有一个非常类似的问题和答案:


我想如果你真的想彻底了解,你可以添加一些东西,在菜单出现时隐藏这个选项。

这可能有助于向我们展示你的相关HTML,或者在JSFIDLE上构造一个简单的示例。只需使用
选择一个
来初始化选择,空的
无论如何都不是有效的HTML。??解决方案?向我们展示相关的HTML,或者在JSFIDLE上构造一个简单的示例可能会有所帮助。只需使用
选择一个
来初始化select。空的
无论如何都不是有效的HTML。??对于解决方案?您还应该将选定项添加到此选项中,并可能将“禁用”添加到此选项中?或者在显示菜单时使用Javascript将其删除。@Asitaka,如果它是第一个选项,则默认情况下已选中它。。。关于
禁用的
建议,OP当然可以做到。因为问题中没有提到,所以我会在答案中保留它。这是真的,但OP可能会添加选项或做一些改变顺序的事情,指定“selected”会强制选择它,而不管顺序如何。好的,如果他们不将代码放在
for
循环之前,我会解释得更好一些。@ErickPetru:我按照上面提到的做了,但我只从组合框中的循环中获取最后一项。您还应该将选定项添加到此选项中,还可以将“禁用”添加到此选项中?或者在显示菜单时使用Javascript将其删除。@Asitaka,如果它是第一个选项,则默认情况下已选中它。。。关于
禁用的
建议,OP当然可以做到。因为问题中没有提到,所以我会在答案中保留它。这是真的,但OP可能会添加选项或做一些改变顺序的事情,指定“selected”会强制选择它,而不管顺序如何。好的,如果他们不将代码放在
for
循环之前,我会解释得更好一些。@ErickPetru:我按照您上面提到的做了,但我只从组合框中的循环中获取最后一项。@hhamitlton:我按照您上面提到的做了,但我只从组合框中的循环中获取最后一项。@hhamitlton:我按照您上面提到的做了,但我只从组合框中的循环中获取最后一项。