我正在尝试使用以下代码将<body>
标记从页面替换为<body id="khanqah">
echo str_replace("%body%", "khanqah", "<body id='%body%'>");
它确实向页面添加了<body id="khanqah">
,但实际的<body>
标记仍然存在。我的意思是现在有两个身体标签,一个是<body>
,另一个是<body id="khanqah">
<body id="khanqah">
标记也在页面顶部添加,请参阅:http://i.imgur.com/6zYWTv8.jpg(页面源代码截图)
我有什么方法可以解决吗?
答案 0 :(得分:1)
它实际上不是替换 HTML中的任何内容,只是echoing
str_replace("%body%", "khanqah", "<body id='%body%'>")
的返回值恰好是字符串<body id="khanqah">
。
如果您使用 PHP输出HTML (在输出之前更改它),则只能用PHP替换HTML body
element。 PHP在服务器端工作,因此一旦HTML到达客户端,它就无法修改它。
您可以使用适用于客户端的JavaScript来执行此操作。
要使用jQuery动态更改正文的id(这是最简单的方法),你可以做到
$('body').attr('id', 'khanqah');