JavaScript - 动态创建选择选项值

时间:2013-05-24 23:49:55

标签: javascript forms dynamic innerhtml createelement

尝试创建一个表单,用户可以在其中输入可变数量的费用。有四个字段,费用描述,费用发生的状态,费用类型和费用。用户单击“添加新费用”按钮以将这些字段的另一部分添加到页面。我有四个字段中的三个工作 - 描述(输入类型文本),类型(单选按钮)和成本(文本)。但是状态是一个下拉列表,它将状态从数据库中拉出来。 db连接很好,PHP创建了一个带有相关值的标签字符串。

下面是JavaScript,我应该注意它在Firefox上运行得很好,但不是IE,它似乎只是创建一个空白的选择字段,其下拉列表中没有任何内容。

<script type="text/javascript">
var instance = 1;

function newExpense(element) {
    instance++;

    var state = document.createElement("SELECT");
    var stateLabel = document.createElement("LABEL");

    state.id = "expensestate" + instance;
    state.name = "expnsestate" + instance;
    state.innerHTML = "<?php echo $stateDropDown ?>";

    stateLabel.setAttribute("for", state.id);
    stateLabel.innerHTML = "State: ";

    document.getElementById("expenses").appendChild(stateLabel);
    document.getElementById("expenses").appendChild(state);
}
</script>

就像我说的,这似乎在Firefox中完美运行。它生成有效的HTML,下拉列表按预期工作。但是在IE中它创建了选择表单字段,但是有一个空的下拉列表。我非常感谢任何我可能遗失的线索!

编辑 - 将代码配对到必需品。谢谢你的提示! :)

0 个答案:

没有答案