我的表格中包含积极填充的元素,例如:
<input id="id1" type="button" name="some_name">
<input id="id2" type="button" name="another_name">
等
我的选择仅限于此。
我不知道id,因为它是由系统动态分配的(参见:id旁边的1,2),所以我不能通过#调用JQ函数。 元素顺序改变,它们以不同的集合等显示。
类操作不实用。 同样适用于任何其他属性 - 几乎 - 有些被使用,有些可能会被动态使用 - 所以我不想搞砸它。
我可以附加一个js事件(在表单生成期间),例如onClick到特定的所需项目。
<input id="id1" onClick="myFunc()" type="button" name="some_name">
<input id="id2" type="button" name="another_name">
我不需要知道标准JS中的id,类或任何东西,因为如果单击带有myFunc的元素,则会触发函数。
是否有可能与JQ完成类似的事情?
答案 0 :(得分:3)
由于您可以内联onlick事件,为什么不在那时添加一个类呢?
在输入中添加一个类可以让你轻松地使用jQuery挂钩。
<input class="myClass" [...] >
$('.myClass').click(function(){ [...] });
<强>更新强>
要直接回答您似乎要问的问题,不,jQuery没有使用HTML绑定属性以内联方式触发事件的独特方式。
但是,您在Javascript中创建的任何函数都可以内联触发。我不推荐这种方法,因为它已经过时并且违反了关注点。
答案 1 :(得分:1)
我不明白为什么你不会使用属性作为参考。你可以这样做:
$("input[type=button][name=some_name]")
或通用处理程序:
$("input[type=button]").click(genericEventHandler);
function genericEventHandler()
{
var clickedButton = $(this);
/* ... */
}