0

確認ボックスで [OK] をクリックした後、削除するアイテムの ID を URL から渡そうとしていますが、何も起こりません。これは IE でも動作しますが、Chrome でも動作するようにしたいと考えています。

<script>
function dltCnfrm(id)
{
    var r=confirm("Delete this product?")
    if (r)
    {
        window.location.href = "http://localhost/e-com/index.php/product/delete_item/" + id;
    }
}
</script>

HTML内のコード

foreach ($items as $res) {
$id = $res['id'];
.
.
<td><?php echo "<a href='' onclick='dltCnfrm($id)'>Delete</a>"; ?></td>

私はまた、他のいくつかの方法を試しました

location.assign();

return false を追加します。if文の下

誰かがChromeブラウザを使ってこれを試すことができますか? Chrome バージョン 24.0.1312.57 m

4

1 に答える 1

1

ID が文字列であることは間違いないので、エラーが発生します

<td><?php echo "<a href='' onclick='dltCnfrm(\"$id\")'>Delete</a>"; ?></td>

おそらく、リンクのクリックもキャンセルしたいでしょう。

<td><?php echo "<a href='' onclick='dltCnfrm(\"$id\"); return false'>Delete</a>"; ?></td>

ただし、GET 要求で削除アクションを実行することは絶対にしないでください。GET はデータの取得用、POST はデータの更新用です。

于 2013-02-13T21:47:22.430 に答える