handlebars.js – 在Handlebars中设置Select元素的选定值

前端之家收集整理的这篇文章主要介绍了handlebars.js – 在Handlebars中设置Select元素的选定值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个手柄模板,我嵌入我的html页面.有一个select元素,所有可用选项已经呈现.当我渲染我的模板时,如何设置选择列表的选定值?
<script id="my-template" type="text/x-handlebars-template">      
    <div id="my-modal">
      <form action="/TestAction" method="post">
        <input id="MyId" name="MyId" type="hidden" value="{{MyId}}" />      
        <label for="Test">Test: (optional)</label>
        <select id="Test" name="Test">
          <option value="">-- Choose Test --</option>
          <option value="1">1</option>
          <option value="2">2</option>
          <option value="3">3</option>
          <option value="4">4</option>
        </select>
      </form>
    </div>
</script>

解决方法

如果您不想将该选项作为助手的一部分,您可以使用一个小型自定义句柄助手和父上下文的组合,使用../语法表示:

首先写助手:

Handlebars.registerHelper('selected',function(option,value){
    if (option === value) {
        return ' selected';
    } else {
        return ''
    }
});

然后在你的模板中,你调用你的帮助器,并传递每个循环中的父上下文以检查selectedState

{{#each states}}
    <option value="{{this}}" {{selected this ../selectedState}}>{{this}}</option>
{{/each}}

猜你在找的JavaScript相关文章