我正在尝试使用chrome扩展名自动填充三个下拉选择元素。我可以更改第一个下拉列表的值,但不会触发onchange事件中的检票口。检票口应该根据第一个选择加载第二个和第三个下拉列表。我在这里想念什么。
可以使用
更改第一个选择的值( "select:first-of-type" ).val( "2" );
尝试通过
触发on更改$( "select:first-of-type" ).change();
$( "select:first-of-type" ).trigger('change');
$( "select:first-of-type" ).triggerHandler('change');
$( "select:first-of-type" ).trigger('onchange');
$( "select:first-of-type" ).triggerHandler('onchange');
等等等等,这些都不填充第二和第三选择。
<div id="new-criteria">
<select name="tabContent:contentPanel:searchCriteriaPanel:newSearchCriteria:searchFie
ldDropDown" id="id62a9" onchange="if (function(){return
Wicket.$('id62a9') != null;}.bind(this)()) {
Wicket.showIncrementally('veil');}var
wcall=wicketAjaxPost('https://www.example.com?1343-
2.IBehaviorListener.0-tabContent-contentPanel-searchCriteriaPanel-
newSearchCriteria-searchFieldDropDown',
wicketSerialize(Wicket.$('id62a9')),function() {
;Wicket.hideIncrementally('veil');}.bind(this),function() {
;Wicket.hideIncrementally('veil');}.bind(this), function() {if
(!function() {return Wicket.$('id62a9') != null;}.bind(this)())
{Wicket.hideIncrementally('veil');}return
Wicket.$('id62a9') != null;}.bind(this));">
<option selected="selected" value="">Choose One</option>
<option value="0">Opperation</option>
<option value="1">Selection</option>
<option value="2">Category</option>
</select>
<select name="tabContent:contentPanel:searchCriteriaPanel:newSearchCriteria:operatorDropDown" disabled="disabled">
<option selected="selected" value="">Choose One</option>
</select>
<span class="value">
<input type="text" value="" name="tabContent:contentPanel:searchCriteriaPanel:newSearchCriteria:value:valueField" disabled="disabled"/>
</span>
更改第一个值,但不填充其他2个
答案 0 :(得分:0)
过去,我在change
事件中也遇到了一些不好的经历。我决定在自定义事件上进行滚动并触发该事件。
所以:
$('.myelement').trigger('customevent')
在Wicket
this.add(new AjaxEventBehavior('customevent') {... } )...
如果您在JS中收听change
,仍然可以决定在DOM上触发change
,只需确保也从该处理程序中触发customevent
。