这是我的Javascript:
function doSomething(fieldActions) {
var Actions = fieldActions;
$(Actions).show("slow");
$(this).hide(); }
这是我的HTML:
<a onclick="doSomething('#date-actions');">edit</a>
参数需要影响和DIV字段。该字段的ID可以是可变的,页面上可以有多个,这就是为什么我需要给它影响的特定字段。 参数“#date-actions”是一个可以调用它的DIV字段的示例。
我在firebug中的错误:
doSomething is not defined
答案 0 :(得分:1)
目前定义doSomething
的地方,它不是全局可访问的函数,例如,如果它位于document.ready
处理程序中,则只能在其中访问。您需要公开范围...但即使这样this
也不会在函数内引用您想要的内容。
解决这两个问题的更好方法是使用链接本身的href
属性,如下所示:
<a class="edit" href="#date-actions">edit</a>
然后通过给它一个类,就像上面的例子一样,你可以像这样绑定document.ready
上的所有链接:
$(function() {
$("a.edit").click(function(e) {
$(this).hide();
$(this.hash).show();
e.preventDefault();
});
});
如果动态添加,只需将绑定从$("a.edit").click(function(e) {
更改为$("a.edit").live("click", function(e) {
。