我刚刚发现了jQuery的强大功能。只是一个简单的问题,但。jQuery替换onclick
什么是onclick =“DeleteSomething('服务器端载入的身份证号码')”的替代品?
是否有某种方式将自定义信息(如ID)传递给jQuery的onclick?还是我必须保持老式的方式?
非常感谢!
亚当
我刚刚发现了jQuery的强大功能。只是一个简单的问题,但。jQuery替换onclick
什么是onclick =“DeleteSomething('服务器端载入的身份证号码')”的替代品?
是否有某种方式将自定义信息(如ID)传递给jQuery的onclick?还是我必须保持老式的方式?
非常感谢!
亚当
我通常使用rel =“”来获取一些额外的数据,我可能需要将它们附加到按钮或其他东西上。
例如
<input class="btnDelete" rel="34" value="Delete" />
然后在jQuery的
$('.btnDelete').click(function() {
DeleteMethod($(this).attr("rel"));
});
$(document).ready(function() {
$('#selector').click(function() {
//here goes your onclick code
});
);
请,张贴一些标记,以获得更多帮助。
另外,您应该阅读jQuery入门资源,链接在库的main page中。
在jQuery中,你会更容易做这样的事情:
$('a').click(function(){
# code here
});
以“”是你想用找到合适的链接任何选择。
在回答您的评论:
也许是最好的办法,因为别人提到的,将是在链接的属性之一提供的动态数据:
<a rel="{id}" >
$('a').click(function(){
deleteFunction($(this).attr('rel'));
});
对,但我该如何将动态数据传递到该函数?就像说它是一个$(“。DeleteComment”)。click并且你有这个类的多个按钮,点击后,他们通过id来删除?以前我只是直接插入到onclick =“DeleteComment(”动态ID“)”的参数中。 – Adam 2009-11-25 03:07:16
取而代之的是:
<button onclick="DeleteSomething('THE ID NUMBER LOADED IN BY SERVER SIDE')">
这样做:
<button id="thing">
<script>
$(function() {
$("#thing").click(function() {
DeleteSomething('THE ID NUMBER LOADED IN BY SERVER SIDE');
}
}
<script>
它将如果你做这种方式更清洁:
<tag class="someclass" prop1="id from serverside" />
$('.someclass').click(function(){
var prop1 = $(this).attr('prop1');
//DeleteSomething(prop1)
});
如果你坚持的对象ID你想要在rel参数中删除,你可以这样做:
<script type="text/javascript>
$('a.deleter').click(function(){
if($(this).attr("rel") != ""){
DeleteSomething($(this).attr("rel"));
}
});
</script>
<a href="javascript:void(0)" rel="54" class="deleter">Delete Widget</a>
使用服务器将{ID}替换为实际ID。
HTML:
<form id="deleter">
<input type="hidden" name="id" value="{ID}" \>
<input type="submit" value="Delete" rel="{ID}" \>
</form>
的jQuery:
$('form#deleter input[type="submit"]').click(function() {
var id = $(this).attr('rel');
DeleteSomething(id);
return false;
}
不要忘记也执行删除服务器端为未启用JavaScript,谁也人!
你甚至可以给它一些除了rel(即:deleteid)以外的墙属性,并以相同的方式访问它:$(this).attr(“deleteid”) – 2009-11-25 03:07:06
哇我不知道我可以做到这一点。我认为这是解决方案! – Adam 2009-11-25 03:12:25