我想使用JS将表格行转换为链接。我看起来像这样:
<tr onClick='javascript:window.location.href='url';'>
然而,当我尝试点击时,它不会按我的意愿去页面。实际上,点击似乎没有任何动作。
任何帮助?
修改
至于引号,我忘了提到我用PHP回应这个问题。这是我更新的代码:
echo "<tr onClick='window.location.href='url?id=" . $var . "';'></tr>";
在这种情况下,我应该像/"
那样进行某种转义吗?
答案 0 :(得分:22)
首先, 在事件处理程序中没有javascript:
- 它们包含JavaScript代码,而不是URL。它只是工作,因为javascript:
在这种情况下是一个标签,因此不是语法错误。
除此之外,任何具有正确语法突出显示的编辑器都会向您显示您正在打破引用,因为您使用HTML属性的单引号和属性内部。
这是固定代码:
<tr onclick="window.location.href = 'url';">
除此之外,内联事件处理程序很脏。使用jQuery更好地附加它们:
$('tr').click(function() {
location.href = 'url';
});
答案 1 :(得分:1)
如您所知,HTML属性必须用引号括起来,因此如果您需要在属性中引用,则需要进行不同的配对。试试这个:
<tr onClick="window.location.href='url';">
如果你在一个循环中并且回显东西,请尝试使用PHP的HEREDOC语法。
$out = '';
foreach ( $x as $y )
{
$out .= <<<HTML
<tr onClick="window.location.href='url';">
HTML;
}
echo $out;
编辑:添加了HEREDOC