【问题标题】:How can i make an option selected with jquery-template如何使用 jquery-template 选择一个选项
【发布时间】:2016-02-03 14:51:48
【问题描述】:

我正在使用 jquery-template,我需要根据 json 的值选择一个选项。

Javascript:

$.ajax({ 
    type: 'POST',
    url: caminho + '/controller/ctrl_usuario.php',
    data: 'acao=buscarUsuarioPorId&idUsuario=' + id,
    dataType: 'json',
    success: function (response) {
        if (response.status == 1) {
            //$('.cadastro').append(response.dados);

          $("#" + id).loadTemplate(caminho + "cadastro/form-usuario.php", response.dados, {error: function (e) {
                    console.log(e);
                }});
        }
    },
    complete: function () {
        //code
    }
});

json 返回: "dados":[{"nome":"Maria Silva","l_Sexo":"F"}]"

    <div class="wrp-inp">
        <label for="genero">Gênero:</label>
        <span class="icon-chevron-down"></span>
        <select name="genero" id="genero" >
            <option value="M" {{if l_Sexo == 'M'}}selected{{/if}}>Male</option>
            <option value="F" {{if l_Sexo == 'F'}}selected{{/if}}>Female</option>
        </select>
    </div>

上面的示例不起作用。

【问题讨论】:

  • 什么没用?控制台日志中有什么内容?
  • 嗨@Harry!没有控制台错误。但该选项并未保持选中状态。 jquery 模板在我的 html 模板中加载所有 json 数据。但我没有找到在 jquery-template 库中设置选定值的方法

标签: javascript jquery html jquery-templates


【解决方案1】:

完整的解决方案:

Javascript:

$.ajax({ 
    type: 'POST',
    url: caminho + '/controller/ctrl_usuario.php',
    data: 'acao=buscarUsuarioPorId&idUsuario=' + id,
    dataType: 'json',
    success: function (response) {
        if (response.status == 1) {

           $("#" + id).loadTemplate(caminho + "cadastro/form-usuario.php", response.dados, {error: function (e) {
                    console.log(e);
                }});

            var sexo = response.dados[0].l_Sexo; 
            $("#genero").val(sexo);
        }
    },
    complete: function () {
        //code
    }
});

HTML:

    <div class="wrp-inp">
        <label for="genero">Gênero:</label>
        <span class="icon-chevron-down"></span>
        <select name="genero" id="genero" >
           <option value="M">Masculino</option>
           <option value="F">Feminino</option>
        </select>
    </div>

【讨论】:

    【解决方案2】:

    只要做:

    var value = 'M';
    $('select[name="genero"]').val(value);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-09
      • 2012-07-18
      • 2010-11-27
      • 2015-02-03
      • 2012-02-27
      • 1970-01-01
      • 2013-03-13
      • 2012-07-07
      相关资源
      最近更新 更多