JSを使用してテーブルの行をリンクに変換したい。私はそれを次のように見せています:
<tr onClick='javascript:window.location.href='url';'>
しかし、クリックしようとすると、ページが思い通りに表示されません。実際、クリックしても何も起こらないようです。
何か助け?
編集:
引用に関して言えば、私はこれをPHPに反映していることを忘れていました。これが私の更新されたコードです:
echo "<tr onClick='window.location.href='url?id=" . $var . "';'></tr>";
この場合、/"
のようなエスケープを行う必要がありますか?
まず、no javascript:
in event handlers-URLではなくJavaScriptコードが含まれます。 javascript:
はこの場合のラベルであり、構文エラーではありません。その上、適切な構文強調表示を備えたエディタは、HTML属性と属性の内部に単一引用符を使用しているため、引用符を壊していることを示しています。
修正されたコードは次のとおりです。
<tr onclick="window.location.href = 'url';">
その上、インラインイベントハンドラーはダーティです。 jQueryを使用してそれらを適切に接続する:
$('tr').click(function() {
location.href = 'url';
});
ご存じのとおり、HTML属性は引用符で囲む必要があるため、引用符が必要な場合はwithin属性に別のペアリングが必要です。これを試して:
<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を追加