【问题标题】:Unable to understand <A HREF> tag and javascript call无法理解 <A HREF> 标记和 javascript 调用
【发布时间】:2012-12-26 00:09:51
【问题描述】:

我有一个 php 应用程序,其中向用户显示网页。该页面有一些链接“编辑”、“重命名”等。

当用户单击链接时,会出现一个对话框提示。该对话框只不过是一个 HTML &lt;div&gt; 表单,当用户单击“重命名”或“编辑”链接时会立即显示。

当我查看 html 源代码(即在 Internet Explorer 中查看 -> 源代码)时,我发现了以下 Javascript 和 HTML 代码

<a class="update renameButton" href="javascript:void(0);">Rename</a>

我无法理解上面的代码是如何提示对话框的。

我希望代码如下所示:

<a class="update" onclick='rename();' href="javascript:void(0);">Rename</a>

谁能帮我理解这个?

【问题讨论】:

  • 如果是你自己的代码,你可能会知道

标签: php javascript jquery html class


【解决方案1】:

&lt;script&gt; 元素加载的一些 JavaScript 可能是 binds an event handler 函数到元素。

【讨论】:

    【解决方案2】:

    事件处理程序很可能绑定到其他地方的元素(可能来自包含的 JavaScript 文件)。例如:

    document.getElementsByClassName("update")[0].addEventListener("click", function () {
        // Do something on click of the first `.update` element
    }, false);
    

    【讨论】:

      【解决方案3】:

      您不应再像onclick 那样在html 中设置事件侦听器。 页面向对象注册一个事件监听器。例如使用像 jQuery 这样的库。

      【讨论】:

        【解决方案4】:

        你完全正确!期待这样的事情是很自然的,除了还有其他方法可以将事件绑定到对象。

        如果您检查页面上的 JavaScript 代码,我相信您会发现可能类似于 $('a.renameButton').click(function(){}); 的内容(如果网站使用 jQuery)或类似的东西,绑定特定标签的 onclick 事件以执行某些特定操作。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2013-11-24
          • 2015-08-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-08-24
          • 2017-11-14
          相关资源
          最近更新 更多