Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 选择默认情况下使用jQuery选择一个选项_Javascript_Php_Jquery_Html_Jquery Selectors - Fatal编程技术网

Javascript 选择默认情况下使用jQuery选择一个选项

Javascript 选择默认情况下使用jQuery选择一个选项,javascript,php,jquery,html,jquery-selectors,Javascript,Php,Jquery,Html,Jquery Selectors,我有一个带有选项的选择框,我使用的是在Zend视图上选择的jQuery。这个插件工作正常 Javascript: $('#select_type').chosen(); 我的问题是,根据type_id的值,当页面加载时,我需要选择其中一个选项。我试过这个: document.getElementById('select_type').value = '<?=$this->type_id?>'; 这将更改其值,但未在所选JQuery中选择该选项 有什么想法吗 编辑:通过执行上

我有一个带有选项的选择框,我使用的是在Zend视图上选择的jQuery。这个插件工作正常

Javascript:
$('#select_type').chosen();
我的问题是,根据type_id的值,当页面加载时,我需要选择其中一个选项。我试过这个:

document.getElementById('select_type').value = '<?=$this->type_id?>';
这将更改其值,但未在所选JQuery中选择该选项

有什么想法吗

编辑:通过执行上面提到的操作,该选项成功更改,但它不会更新/更改jQuery selected插件中的选定元素。我的问题是更新jqueryselect的selected值,而不是我已经成功完成的HTML SELECT

试试看

用JS更新列表 跑步后:

document.getElementById('select_type').value = '<?=$this->type_id?>';
摘自:

动态更新所选内容 如果需要更新select字段中的选项并希望select拾取更改,则需要在该字段上触发SELECTED:updated事件。Selected将根据更新的内容重新构建自身

$form_字段。TriggerSelected:已更新

有关此API更改的公告,请参阅

对于低于1的选定版本 你应致电:

$('#select_type').trigger('chosen:updated');
$('#select_type').trigger('liszt:updated');
摘自:

动态更新所选内容 如果您需要更新“选择”字段中的选项并希望选择 要获取更改,您需要触发liszt:updated 这是场上的一场比赛。所选内容将根据更新后的 内容

jQuery版本:$form_field.triggerlistzt:已更新; 原型版本:Event.fire$form_字段,李斯特:更新; 在调用Selected之前设置该值 在使用JavaScript调用所选插件之前,为什么不在HTML中设置所选选项,而不是从JS执行此操作?您正在从一段PHP设置值,因此我不明白为什么不能这样做。

尝试以下方法:

$('#select_type').val('<?=$this->type_id;?>'); // Select the value before .chosen();
$('#select_type').chosen();
$("#select_type").val(<?=$this->type_id?>).trigger('change');

$('#select_type').trigger('liszt:updated');

您只需在选定属性的情况下设置正确的元素,如下所示:

<select name="teams[]" data-placeholder="Chose an option:" 
        class="chzn-select" multiple tabindex="6">
    <option value=""></option>
    <option selected="selected">Dallas Cowboys</option>
    <option selected="selected">New York Giants</option>
    <option>Philadelphia Eagles</option>
    <option>Washington Redskins</option>
</select>
“已选择”将自动初始化并显示两个预先选择的选项。

尝试以下操作:

$('#select_type').val('<?=$this->type_id;?>'); // Select the value before .chosen();
$('#select_type').chosen();
$("#select_type").val(<?=$this->type_id?>).trigger('change');

$('#select_type').trigger('liszt:updated');
请尝试以下操作:

$("#choen-presentacion").val(value.id_presentacion).trigger('chosen:updated')

这不是两个独立的问题吗?提供的jQuery与值无关,反之亦然。谢谢yapingchen,但我知道如何设置所选的选项,我需要在上面提到的插件中选择$'select_type'.val;这太棒了!我需要在DOM上进行一个更改操作,但要使其恢复正常。如果您的第一个选项与文档中的类似,您可以将其放在更改绑定的末尾,以重置选择菜单:$this.val$this.triggerlistzt:updated从现在选择触发器的1.0版本开始:updated。见@Tony谢谢你提到这一点。我已经更新了我的答案,以反映他们API的这些变化。