在inputpicker中手动设置一个值

时间:2019-02-03 03:22:46

标签: javascript jquery

我使用这个plugin for inputpicker

<input class="form-control" id="test" value="2" />
<script>
$('#test').inputpicker({
    data:[
        {value:"1",text:"Text 1", description: "This is the description of the text 1."},
        {value:"2",text:"Text 2", description: "This is the description of the text 2."},
        {value:"3",text:"Text 3", description: "This is the description of the text 3."}
    ],
    fields:[
        {name:'value',text:'Id'},
        {name:'text',text:'Title'},
        {name:'description',text:'Description'}
    ],
    autoOpen: true,
    headShow: true,
    fieldText : 'text',
    fieldValue: 'value'
    });
</script>

如何为此输入选择器手动选择一个值? 我尝试过

$("#test").val(2);

但是在视觉上什么也没显示

1 个答案:

答案 0 :(得分:1)

这是JavaScript起作用的方式导致此问题,特别是在输入上设置值不会触发更改事件。您可以测试:

假设$ 0是输入元素

$0.onchange = function(){ alert('1') }
$0.value = '123';

将不显示任何警报。相同的行为适用于jQuery的.val()函数。

因此,您需要自己触发更改事件,即

$("#test").val(2).trigger('change');

然后输入选择器将能够实际接收更改。