我有一个带有活跃填充元素的表单,类似于:
<input id="id1" type="button" name="some_name">
<input id="id2" type="button" name="another_name">等。
我的选择在这里是有限的。
我不知道id,因为它是由系统动态分配的(参见id旁边的1,2 ),所以我不能通过#调用JQ函数。元素的顺序改变,它们显示在不同的集合中等。
类操作是不实用的。其他的attrib也是如此--一些属性被使用了,一些属性可能会被动态地使用,所以我不想搞乱它。
我可以(在表单生成期间)将js事件附加到特定的所需项目,例如onClick。
<input id="id1" onClick="myFunc()" type="button" name="some_name">
<input id="id2" type="button" name="another_name">在标准JS中,我不需要知道id、类或任何东西,因为如果单击带有myFunc的元素,就会触发function。
有没有可能用JQ来完成类似的事情?
发布于 2011-09-14 20:03:09
既然你可以内联你的onlick事件,为什么不在那个时候添加一个类呢?
在您的输入中添加一个类将允许您使用jQuery轻松地连接到它。
<input class="myClass" [...] >
$('.myClass').click(function(){ [...] });更新
为了直接回答您似乎在问的问题,不,jQuery没有使用HTML属性内联触发事件的独特方法。
但是,您在Javascript中创建的任何函数都可以内联触发。我不推荐这种方法,因为它已经过时了,并且违反了关注点的分离。
发布于 2011-09-14 20:03:15
我不明白为什么你不使用属性作为引用。你可以这样做:
$("input[type=button][name=some_name]")或通用处理程序:
$("input[type=button]").click(genericEventHandler);
function genericEventHandler()
{
var clickedButton = $(this);
/* ... */
}https://stackoverflow.com/questions/7415948
复制相似问题