【问题标题】:jQuery templates and selects... "tag" way of producing a select pulldown with an option selected?jQuery模板和选择......“标签”产生选择下拉菜单的方式选择了一个选项?
【发布时间】:2011-06-11 20:54:33
【问题描述】:

我想知道是否有人知道我可以编写一个 jQuery 模板(仅使用模板标签)来创建一个选择下拉列表并选择一个选项。 我已经有一个带有两个参数的对象:选项的键/值列表和选定的选项。 更糟糕的是:我没有选择的索引,我只有选项字符串。

var optionObj = { optionsList: jsonlist, selectedOption: selectedOptionText };

我一直在使用 KnockoutJS,它工作得很好,但是(据我所知)它不支持基于选项文本值的选项选择。

有什么想法吗?

我只是想出了这个,但也许有更好的方法?

<script id="tmplTextOptions" type="text/x-jquery-tmpl">
    {{each optionsList}}
        <option value="${Key}"
        {{if Value==selected}} selected="selected" {{/if}}
        >${Value}</option>
    {{/each}}
</script>

【问题讨论】:

    标签: jquery templates knockout.js


    【解决方案1】:

    您可以为您的 optionsList 中的每个选项添加一个 selected 属性,并为选定的选项存储 'selected="selected"'。然后在每个选项中,您可以输出如下内容:

    &lt;option value="${Key}" ${Selected}&gt;${Value}&lt;/option&gt;

    【讨论】:

    • 是的,这可能是个好主意。它也将涵盖多个选择。 +1。唯一的缺点是我通过网络服务填充选项列表,它只返回一个键/值对。必须使其成为包含三个元素的模型数组。可能不是什么大问题。
    猜你喜欢
    • 1970-01-01
    • 2014-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-04
    • 1970-01-01
    相关资源
    最近更新 更多