0

链接在此示例中有效,但 onClick 不执行任何操作。当我在 alert() 中显示 productURL[i] 时,它会显示正确的 URL。有什么建议么?

var output='<table class="api-table">';
output+='<thead><tr><th colspan="2">' + productSubstrateName + '</th></tr></thead>';
for (var i=0;i<productURL.length;i++) {
output+='<tr>';
output+='<td style=\"cursor:pointer;\" onClick=\"'+productURL[i]+'\"><a href="'+productURL[i]+'">'+productSubstrateAmounts[i]+'</a></td>';
    output+='<td style=\"cursor:pointer;\" onClick=\"'+productURL[i]+'\"><a href="'+productURL[i]+'">'+productSubstratePrices[i]+'</a></td>';
    output+='</tr>';
}

 output+="</table>";

 $('#'+outputdiv).append(output);
4

2 回答 2

3

但 onClick 什么也不做。

它什么也没做,因为你在那里什么也没做……你只是在打印价值……

  onClick=\"'+productURL[i]+'\"
        //--^^^^^^^^^^^----

如果你需要做某事,那么你可以在那里调用一个函数

  onClick="myFunction("'+productURL[i]+'")"

和你的功能

 function myFunction(obj){
    alert(obj);
 }

你不必在\那里使用

于 2013-04-11T10:45:07.313 回答
0

初学者的错误,谢谢bipen,我忘记了document.location.href。:-(

        for (var i=0;i<productURL.length;i++) {
            output+='<tr>';
            output+='<td style="cursor:pointer;" onClick="document.location.href=\''+productURL[i]+'\';"><a href="'+productURL[i]+'">'+productSubstrateAmounts[i]+'</a></td>';
            output+='<td style="cursor:pointer;" onClick="document.location.href=\''+productURL[i]+'\';"><a href="'+productURL[i]+'">'+productSubstratePrices[i]+'</a></td>';
            output+='</tr>';
        }
于 2013-04-11T11:04:57.697 回答