select2属性" data-init-text"

时间:2014-03-13 12:25:53

标签: javascript jquery jquery-select2

我想填充一个select,但没有相关的描述。 只有价值。

我正在使用(select2):

$( '#element' ).attr( "data-init-text", "" ).val( value ).change();

但不起作用,因为我没有说明

我使用隐藏的输入作为ajax调用。

任何想法。谢谢

2 个答案:

答案 0 :(得分:2)

您需要获取id(您调用该值)的文本(您称之为描述)。由于您对Select2数据使用ajax,因此可以使用ajax调用来获取id的文本。

您将提供一个initSelection函数来进行ajax调用。它可能看起来像这样:

initSelection: function(element, callback) {
    var id= $(element).val();
    if (id) {
        $.ajax('/this/is/the/url/', {
            data: { id: id },
            dataType: 'json',
            success: function(data) { callback(data); } });
    }
}

在这种情况下,ajax调用传递“id”参数,并且应该返回如下所示的json:

{ id: 'the_passed_in_id', text: 'the_text_for_the_id' }

Demo on JSFiddle

答案 1 :(得分:1)

只需创建正常选择:

<select id='myId'>

 <option value='val1'>Option 1<option>

 <option value='val2'>Option 2<option>

</select>

$(&#39;#MYID&#39;)SELECT2();

如何创建select2。

如果您想选择一个选项:

$(&#39;#myId&#39;)。select2(&#39; val&#39;,&#39; val2&#39;);

在这种情况下,选择选项2。