我在updatepanel中有一个DropDownList,并将其绑定在后面的代码中。
<span id="dropdown" class='css-select-moz groupTitle' style="margin-right: 880px; padding-top: 0; margin-top: 0px; background: transparent">
<asp:DropDownList ID="SubCategoryDropDownList" AutoPostBack="true" OnSelectedIndexChanged="SubCategoryDropDownList_SelectedIndexChanged" runat="server" CssClass="css-select"></asp:DropDownList>
</span>
和风格
.css-select {
-moz-appearance: window;
background-position: left bottom;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
padding: 2px;
border: none;
-moz-appearance: none;
text-indent: 0.01px;
text-overflow: ellipsis;
background: transparent;
color: #FF8000;
}
我希望在鼠标悬停时打开DropDown,我使用这个脚本
$(document).ready(function(){
$("#SubCategoryDropDownList").hover(function(){
$(this).trigger('click');
});
})
但是不要打开项目,如何在鼠标悬停时打开DropDownList?
答案 0 :(得分:0)
看到你使用了.trigger()
,你必须在代码中指定要触发的点击,因为它不在那里,触发器不会被执行。
执行附加到给定事件类型的匹配元素的所有处理程序和行为。
这意味着:
$("#foo").on( "click", function() { //<--the given event type "click"
alert('clicked');
});
$("#foo").trigger("click"); // <---triggering the same event type "click"
当相应的事件发生时,会触发附加.on()或其快捷方法之一的任何事件处理程序。但是,可以使用.trigger()方法手动触发它们。对.trigger()的调用以与用户自然触发事件时相同的顺序执行处理程序:
答案 1 :(得分:0)
Hiral回答应该做什么但是请记住它是一个完全客户端处理的功能,你应该删除AutoPostback="True"
或利用某种AJAX来做到这一点。触发选项的单击事件时,会发生 PostBack 。现在的问题是响应中的选项框仍然关闭,因此您不会注意到客户端脚本的效果。
答案 2 :(得分:0)
参考此Fiddel
它会帮助您理解:http://jsfiddle.net/AndreasPizsa/NzvKC/
: - )