Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于提供的值生成选择标记的Javascript帮助程序方法_Javascript_Html - Fatal编程技术网

基于提供的值生成选择标记的Javascript帮助程序方法

基于提供的值生成选择标记的Javascript帮助程序方法,javascript,html,Javascript,Html,我试图在我的JS工具包中创建一个助手方法,如下所示 var selectOptionValues = [" ","NA","Yes","No"]; var selectedValue = "No"; function CreateSelectList(selectId,selectOptionValues,selectedValue){ // build the selectlist // if the selectedValue is not null make this value se

我试图在我的JS工具包中创建一个助手方法,如下所示

var selectOptionValues = [" ","NA","Yes","No"];
var selectedValue = "No";


function CreateSelectList(selectId,selectOptionValues,selectedValue){
// build the selectlist
// if the selectedValue is not null make this value selected
// return select tag
}

我尝试执行类似于
selectedOption=selectTag[selectedValue]
的操作,然后执行
selectedOption.selected=true
,但它不起作用。

假设您通过创建DOM节点生成选项,而不起作用的部分是No选项的选中状态。请尝试selectOption.setAttribute(“已选定”、“已选定”)-大致

var selectOptionValues = [" ","NA","Yes","No"], selectedValue = "No";

function CreateSelectList(selectId,selectOptionValues,selectedValue){
    var selectList = document.createElement("select"), selectOption;
    for (var i=0, totalOptions = selectOptionValues.length; i < totalOptions ; i++) {
        selectOption = document.createElement("option");
        selectOption.value = selectOptionValues[i];
        selectOption.innerText = selectOptionValues[i];
        if (selectOptionValues[i] == selectedValue) {
            selectOption.setAttribute("selected","selected");
        }
        selectList.appendChild(selectOption);
    };
    return selectList;
}
var-selectOptionValues=[“”、“NA”、“是”、“否”]、selectedValue=“否”;
函数CreateSelectList(selectId、selectOptionValues、selectedValue){
var selectList=document.createElement(“选择”),selectOption;
对于(var i=0,totalOptions=selectOptionValues.length;i
假设您通过创建DOM节点生成选项,而不工作的部分是No选项的选定状态。请尝试selectOption.setAttribute(“已选定”、“已选定”)-大致

var selectOptionValues = [" ","NA","Yes","No"], selectedValue = "No";

function CreateSelectList(selectId,selectOptionValues,selectedValue){
    var selectList = document.createElement("select"), selectOption;
    for (var i=0, totalOptions = selectOptionValues.length; i < totalOptions ; i++) {
        selectOption = document.createElement("option");
        selectOption.value = selectOptionValues[i];
        selectOption.innerText = selectOptionValues[i];
        if (selectOptionValues[i] == selectedValue) {
            selectOption.setAttribute("selected","selected");
        }
        selectList.appendChild(selectOption);
    };
    return selectList;
}
var-selectOptionValues=[“”、“NA”、“是”、“否”]、selectedValue=“否”;
函数CreateSelectList(selectId、selectOptionValues、selectedValue){
var selectList=document.createElement(“选择”),selectOption;
对于(var i=0,totalOptions=selectOptionValues.length;i
除了Dean Burge建议的方法外,您还可以通过选择对象的
selectedIndex
属性设置默认值。如果将selectedValue设置为所需值的索引,则变得非常简单:

//selectedValue==3;
yourPopulatedSelect.selectedIndex=selectedValue;
//"No" will be selected

除了Dean Burge建议的方法外,您还可以通过选择对象的
selectedIndex
属性设置默认值。如果将selectedValue设置为所需值的索引,则变得非常简单:

//selectedValue==3;
yourPopulatedSelect.selectedIndex=selectedValue;
//"No" will be selected

你不需要用DOM而不是赋值来构建它吗?@Gunner:当我创建一个像div这样的DOM元素时,我会使用这样的方法并将其作为子元素附加到它。你不需要用DOM而不是赋值来构建它吗?@Gunner:当我创建一个像div这样的DOM元素时,我会使用这样的方法并将其作为子元素附加到它。“selectOption.setAttribute”,这是来自JQuery的吗?否-JQuery等价物可能是来自内存的attr()方法。除了原始问题的要点之外,我的示例中的一个子问题selectOption.innerText是否应该是selectOption.nodeValue?”selectOption.setAttribute“,这是来自JQuery吗?否-JQuery等价物可能是内存中的attr()方法。除了原始问题的要点外,我的示例中的selectOption.innerText是否应该是selectOption.nodeValue?