多个jquery选择器
感谢karim79,我可以单击ImageButton
并将Jquery高亮效果应用于不同的div
$("#btnFavorite").click(function() { // selector for element to highlight $("#theDiv").effect("highlight", {}, 3000); });
现在我想将问题扩展如下。
我动态地将ImageButtons
添加到网页,我想在每个ImageButton
点击上对div
应用效果。
那个案子我该怎么办? 通过使用listview的ItemDataBound
并添加类似的属性
btnFavorite.Attributes.Add("onmouseclick", "doSomething")
还是什么?
我完全失去了!
你可以尝试这样一个更通用的选择器……
$("input[type='image']").click(function(){ $(".. related div selector ..").effect("highlight", {}, 3000); });
我不知道div
和input
之间的关系,所以我不能假设选择器是什么,但如果你发布关系或解释它,我们可以帮助你写一个更准确的选择器。
值得注意的是,如果在DOM加载后动态地将ImageButton
添加到页面而不是服务器端,那么您可能希望使用live
方法来附加事件…
$("input[type='image']").live('click', function(){ $(".. related div selector ..").effect("highlight", {}, 3000); });
只需将名为class
的属性添加到要使用此效果制作器function的ImageButtons
,并使用名称对其进行评估 ,例如effectMaker 。 然后调用相同的函数,但将选择器更改为
$(".effectMaker").click(function() { // selector for element to highlight $("#theDiv").effect("highlight", {}, 3000); });
随着.
选择器后跟一个stringValue ,您引用具有使用该stringValue值的类的每个元素。
有人说委托function比直播function更好:
我不知道这对你有用,但我所做的就是:
$("#<%= ListView1.ClientID %>").find(".ImageButtonTarget").click(function() { .. });
我给我的按钮控件一个唯一的类来查找它,并批量解析整个列表视图。 我不确定是否有一个或多个div,但如果div在listview行中,你也可以使用父组合,并从ListView行中找到它。
这也使得范围保持在ListVIew内; 选择器不必解析整个页面以查找图像按钮,仅在列表中。
HTH。
这将在’theDiv’容器中的’image’类型的每个输入上应用effect():
$('#theDiv').find('input[type="image"]').effect('highlight', {}, 3000);
或者,这将在每个输入类型图像点击时将其应用于’theDiv’:
$('input[type="image"]').click(function() { $('#theDiv').effect('highlight', {}, 3000); });
不确定你要做的是哪一个。