【问题标题】:Using a href can we call a function from a file using javascript or jquery..? [closed]使用 href 我们可以使用 javascript 或 jquery 从文件中调用函数吗? [关闭]
【发布时间】:2012-07-25 18:29:53
【问题描述】:

我想使用 href 从文件中调用函数。下面是我的javascript代码:

 function createtable() {
   function displaytable(argument) {
     var tr=document.createElement('tr');
     for (var i=0; i < argument.length; i++) {
       var td=document.createElement('td');
       if (i == 0) {
         td.appendChild(document.createTextNode(argument[i]));
       }
       if (i == 1) {
         td.appendChild(document.createTextNode(argument[i]));
       }
       if (i == 3) {
         td.appendChild(document.createTextNode(argument[i]));
       }
       if (i == 2) {
         td.ondblclick= function () {
         var column_index= (this.cellIndex) -1;
         var row_index= (this.parentNode.rowIndex);
         search_cell(row_index,column_index);
       }
       td.appendChild(document.createTextNode(argument[i]));
     }
     tr.appendChild(td);
    }
    document.getElementById('table_body').appendChild(tr);
  }
  document.write("<table border=\"1\"><tr><th>INDEX</th><th>--CELL NAME--</th><th>--PIN NAME--</th><th>--PG PIN--</th></tr><tbody id='table_body'></tbody></table>");

 for (var x=0; x < array_cells.length; x++) {
  displaytable([x+1,array_cells[x].cell,array_cells[x].pins,array_cells[x].pg_pins])
 }
 function search_cell(row_index,column_index) {

//想用href调用这个函数 } }

我想在我的代码中添加一个功能,当我点击 html 表格中的一个单元格时,它会使用 href 从文件中调用一个函数。

【问题讨论】:

  • 您是否尝试过一些不起作用的方法?没有理由不能对页面上任何元素的点击事件调用 JavaScript 函数。

标签: javascript


【解决方案1】:

你的问题不清楚。但这就是我理解你想要的:

<table>
    <tr>
        <td>Column 1</td>
        <td>Column 2</td>
        <td>Column 3</td>
        <td><a href="#" id="link1">Function 1</a></td>
    </tr>
</table>

对于JS部分:

<script type="text/javascript">

    function doSomething( data ) {
        alert(data + ' clicked');
    }

    document.getElementById('link1').onclick = function () {
        doSomething( this.innerHTML );

        return false;
    }

</script>

【讨论】:

  • 如果这是您正在寻找的答案,则将此答案标记为正确
  • 先生,我想使用 javascript 执行此操作....告诉我如何在 javascript 中执行此操作...以便我仅在 javascript 文件中编写代码并在 html 文件中获取它
  • 正如@David 所提到的,如果你提到了 JS 引用,那应该不是问题
  • 给你的
  • @sam1989:你到底在做什么?:&lt;script src="javascripts.js"&gt;link.onclick = sample()&lt;/script&gt; script 标签内的代码在这种情况下毫无意义。它可能会向您的 JavaScript 控制台抛出错误。此外,您非常难以为您提供帮助。听起来您确实需要遵循一些教程和练习,然后学习 JavaScript。我们不能为您做这一切。
【解决方案2】:

回应您的评论,主要是...

我从未见过使用link.setAttribute() 来完成此操作。所以我什至不知道这是否可行。但是您绝对不想使用href 来执行JavaScript 函数。您也不想引用 JavaScript 文件。在加载到 DOM 中的 JavaScript 代码和其他内容的范围内,文件是无关紧要的。加载 JavaScript 代码后,它就可以在整个 DOM 中使用。

所以你要做的第一件事就是加载 JavaScript(可能在 HTML 的标题中,但在它真正使用之前的任何地方):

<script type="text/javascript" src="path/to/file.js"></script>

(请注意,这不是一个自关闭标签。它需要使用 HTML 规范中的完整关闭语法。)

加载 JavaScript 代码后,您可以从任何点击事件调用其中的任何函数。因此,如果在您的代码中,link 是一个引用目标 DOM 元素的值,那么您希望 linkonclick 调用该函数:

link.onclick = someFunction();

还有更多例子here

【讨论】:

  • 先生,您能否提供完整的代码,如何让我的表格内容可以调用函数,因为我完全糊涂了
  • @sam1989:我不知道“你的桌子的内容”是什么,所以不,我不能。但是,您可以编辑您的问题以包含更多代码和更多您正在尝试做的事情的示例。通常,您要做的是将 JavaScript 函数调用绑定到一个或多个 HTML 元素的 onclick 事件。有多种方法可以做到这一点。你在什么方面感到困惑?你有什么不明白的?
  • @sam1989:该代码中引起我注意的部分是:link.onclick=sample(); 是否为该元素的onclick 事件成功调用了sample() 函数?如果没有,是否有错误?另外,document.createElement('link') 是什么?我不熟悉 HTML 中的 link 元素。那是一个新的 HTML5 元素吗?自定义元素?还是您的意思是改用 a 元素?
  • @sam1989:首先,您需要停止将未格式化的代码转储到 cmets 中。这很难阅读。如果您有澄清要添加到您的问题中,请将其添加到问题中作为编辑,而不是作为评论。绝对不是对每个单独答案的评论。另外,不要再要求每个人都为您提供完整的代码。你需要学习一些基本的 JavaScript。我们可以帮助您解决特定问题,但我们不会为您编写代码或为您提供完整的 JavaScript 教程。就目前而言,您的问题没有任何意义。澄清你的问题。
  • 你能告诉我一些参考书和 pdf 文件,从中我可以更好地学习 javascript....
猜你喜欢
  • 2012-07-08
  • 1970-01-01
  • 2016-04-15
  • 2019-04-08
  • 1970-01-01
  • 2020-12-31
  • 1970-01-01
  • 1970-01-01
  • 2013-01-23
相关资源
最近更新 更多