Javascript 选择标记默认选择空白项

Javascript 选择标记默认选择空白项,javascript,html,forms,Javascript,Html,Forms,通过在页面中添加以下字符串,我声明了几个关于4-5打的选择项 "<select id='myidxxx'><option>" + default + "</option></select>" 然后再添加其他元素。问题是,无论是否添加其他元素,在开始时始终会选择一个空白元素。我不能让它没有一个,或者选择默认值。我试过了 <option selected='selected'> 但是没有成功。如何使其仅列出明确添加的选项,无空行,并选择

通过在页面中添加以下字符串,我声明了几个关于4-5打的选择项

"<select id='myidxxx'><option>" + default + "</option></select>"
然后再添加其他元素。问题是,无论是否添加其他元素,在开始时始终会选择一个空白元素。我不能让它没有一个,或者选择默认值。我试过了

<option selected='selected'>
但是没有成功。如何使其仅列出明确添加的选项,无空行,并选择默认条目


编辑:我正在使用IE8什么浏览器?含铬

<select><option>default</option></select>

将“默认”显示为预选项目

哪个浏览器?含铬

<select><option>default</option></select>

将“default”显示为预选项首先,我建议您在JS中创建元素

动态创建select标记及其选项是我将采用的方法。我想知道,你是从一个数据库或某个其他位置提取数据,这可能是你从中获取空白的地方。

另一种可能的解决方案是迭代option标记的子项,如果它是null或空字符串,则不添加它

for (i = 0; i < options.length; i++) {
    if (options[i] != "" && options[i] != " ") {
        opt = document.createElement("option");
        opt.innerText = options[i];
        opt.value = i;
        selectTag.appendChild(opt);
    }
}

这里有一个例子:

首先,我建议您在JS中创建元素

动态创建select标记及其选项是我将采用的方法。我想知道,你是从一个数据库或某个其他位置提取数据,这可能是你从中获取空白的地方。

另一种可能的解决方案是迭代option标记的子项,如果它是null或空字符串,则不添加它

for (i = 0; i < options.length; i++) {
    if (options[i] != "" && options[i] != " ") {
        opt = document.createElement("option");
        opt.innerText = options[i];
        opt.value = i;
        selectTag.appendChild(opt);
    }
}

这里有一个例子:

你是说,如果你有+default+它会选择一个空格?很奇怪。默认列为空白空间下的选项吗?如果不是,我猜您的默认变量是未定义的,所以它会将其打印为空白空格是的,它已列出。总是有空白的顶部选择,然后默认,然后任何其他选项,如果我添加他们,所以你是说,如果你有+默认+它会有一个空白的空间选择?很奇怪。默认列为空白空间下的选项吗?如果不是,我猜您的默认变量是未定义的,所以它会将其打印为空白空格是的,它已列出。总是有空白的顶部,然后默认的,然后任何其他选项,如果我添加了为什么你建议在JS中构建它?我个人只是尽量避免字符串串接,只是一个习惯。@ SDLIIHSSIRSH我在JS中构建它,当我添加默认选项之外的其他选项时,我迭代一个数组并添加每个选项,这看起来很好。我的问题中显示的字符串连接是我把它放在一起的地方,$'div'.htmlstring是我将它添加到页面的地方。我从数组中提取默认值,列表中的其余项是数组的其余部分。由于某种原因,数组从1被索引,所以数组(0)导致了空白。为什么您建议在JS中构建它?我个人尝试尽可能避免字符串连接,只是一种习惯。@ SDLIIHSSIRSH我在JS中构建它,当我把其他选项添加到默认值之外时,我在一个数组上迭代并添加了每个选项,这似乎很管用。我的问题中显示的字符串连接是我把它放在一起的地方,$'div'.htmlstring是我将它添加到页面的地方。我从数组中提取默认值,列表中的其余项是数组的其余部分。由于某种原因,数组从1被索引,所以数组(0)导致了空白。