如何从JSON对象设置选择默认值?

时间:2016-12-28 13:29:11

标签: jquery html json

我正在尝试为我的网站创建“更新用户”表单。

function get_value(id){

    $.ajax({

        url: '*censored*',

        type: 'get',

        data: {'id': id},

        success: function (json) {

 $('input[name=username]').val(json[0].user_name);
        $('select[name=language_id]').val(json[0].language_id).attr('selected','selected');

功能不完整,但我猜有足够的信息。将现有值设置为输入字段有效,但我如何设置select的默认值?以上代码我试过了。

1 个答案:

答案 0 :(得分:0)

如果options的值等于你的JSON值,你必须检查每个$("select[name='language']").find("option").each(function() { // Find all 'options' in your select if($(this).val() == json[0].language_id) { // Compare the value of the 'option' with your JSON-value $(this).attr("selected", "selected"); // If this matches, set the selected="selected" attribute for the <option> } });

selected

在您的HTML代码中,您为<select> - 标记设置了<option> - 属性,这是错误的,您将此属性赋予name - 标记。

另外,您选择了错误的language选项:它只是language_id,而不是{{1}}。