2012-07-20 61 views
-1

我想使用href从文件中调用函数。下面是我的javascript代码:使用href,我们可以使用javascript或jquery从文件调用函数..?

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从文件调用函数。

+0

你有没有尝试过一些不起作用的东西?没有理由不能在页面上的任何元素的单击事件中调用JavaScript函数。 – David 2012-07-20 12:18:00

回答

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> 
+0

如果这是你正在寻找的答案,然后标记这个答案是正确的 – 2012-07-20 12:39:48

+0

先生我想这样做使用JavaScript ....告诉我我怎么能做到这一点的JavaScript ...所以,我只写在javascript文件中的代码并在HTML文件中源代码 – sam1989 2012-07-20 12:43:23

+0

正如@David所提到的,如果你提到的JS引用比它不应该是一个问题** ** – 2012-07-20 12:51:58

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元素的值,那么你想要的linkonclick调用的函数:

link.onclick = someFunction(); 

还有更多的例子here

+0

先生你可以给我提供完整的代码如何使我的表格内容可能调用一个函数,因为我完全困惑 – sam1989 2012-07-20 12:48:37

+0

@ sam1989:我不知道你的表的内容是什么,所以我不能。但是,您可以编辑您的问题以包含更多代码和更多您想要做的事例。一般来说,你要做的是将JavaScript函数调用绑定到一个或多个HTML元素的'onclick'事件。有多种方法可以做到这一点。你以什么方式困惑?你不了解它吗? – David 2012-07-20 12:51:26

+0

@ sam1989:该代码中吸引我注意的部分是:'link.onclick = sample();'是否成功调用该元素的'onclick'事件的'sample()'函数?如果没有,是否有错误?另外,什么是'document.createElement('link')'?我不熟悉HTML中的link元素。这是一个新的HTML5元素吗?一个自定义元素?还是你的意思是使用'a'元素来代替? – David 2012-07-20 13:03:40

相关问题