繁体   English   中英

HTML5 window.history没有运行新的javascript

[英]HTML5 window.history doesn't run new javascript

我有一个页面,显示来自数据库的一些数据。 这些数据行中的每一个都有一个带有ID的链接。

<a href="javascript:void(0);" onClick="changeUrl(\'?side=annoncer&sletid='.$row['annonce_id'].'\');">

这是changeUrl函数:

function changeUrl(url) {
    window.history.replaceState(null, "Title", url);
}

链接指向添加了&sletid的同一页面。 设置&sletid ,页面应使用所选行的ID弹出窗口。

if (isset($_GET['sletid'])) {
    $sletid = $_GET['sletid'];
    echo "<script language='JavaScript'>alert ('ID:".$sletid."');</script>";
}

URL发生更改,并且弹出脚本代码已添加到源中,但是除非我再次手动更新页面,否则不会显示弹出窗口。 为什么会这样呢?

replaceState实际上并不加载页面,它只是在浏览器中编辑历史记录(和位置栏)。 您需要使用AJAX自己加载页面。

您的phpcode不会执行,因为历史记录状态的更改只会影响客户端。 您需要在客户端上监听历史记录的更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM