Jquery ajax转换表单选择选项



我的头撞到墙上了。我有一个按钮打开一个对话框与窗体在它。表单通过PHP生成,然后通过ajax作为内容加载到对话框中。除了选择之外,一切似乎都在工作。选项文本被移到选项标签之外。

调用jquery:

$.ajax({
    type: 'POST',
    url: '/wizard/basic-info/contact',
    dataType: 'html',
    success: function(html) {
        console.log(html);
        $('#dialog-form').append(html);
        $('#dialog-form').dialog("open");
    }
});

success函数中的console.log基本上产生:

<form action="" method="post" id="contact">
<label>Payment Terms</label>
<select name="payment_terms" id="payment_terms">
    <option value="" selected="selected"></option>
    <option value="net15">Net 15</option>
    <option value="net30">Net 30</option>
    <option value="net45">Net 45</option>
    <option value="net60">Net 60</option>
    <option value="cod">COD</option>
    <option value="consignment">Consignment</option>
</select>

但是检查完成表单的DOM会得到:

<form action="" method="post" id="contact">
<label>Payment Terms</label>
<select name="payment_terms" id="payment_terms">
    <option value="" selected="selected"></option>
    <option value="net15"></option>Net 15
    <option value="net30"></option>Net 30
    <option value="net45"></option>Net 45
    <option value="net60"></option>Net 60
    <option value="cod"></option>COD
    <option value="consignment"></option>Consignment
</select>

显然,每个选项的文本都在错误的一边。有什么建议吗?

——回答说哦,我的错。我编码我的自定义元素视图脚本错误。我在选项标签中添加了一个斜杠。:

<option value="net15" />Net 15</option>

应该是:

<option value="net15">Net 15</option>

我错了,谢谢你的帮助。

我试过你的代码。效果很好。这可能是因为您使用的jquery版本不同。我尝试过v1.6.2。和UI v.1.8.16

最新更新