-1

我想使用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 从文件中调用一个函数。

4

2 回答 2

0

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

<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>
于 2012-07-20T12:29:38.357 回答
0

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

我从未见过使用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 元素的值,那么您希望onclickoflink调用该函数:

link.onclick = someFunction();

这里有更多的例子。

于 2012-07-20T12:32:56.977 回答