2013-03-26 161 views
0

我想知道如果我有一个HTML页面,如何用php的名称或ID删除一个元素。所以我可以有这样的HTML代码用php删除html元素

<div> 
    <span id='todelete' name='todelete'>This should be deleted</span> 
    <?php 
     delete('todelete'); 
    ?> 
</div> 

或类似的东西,和网络浏览器将只显示一个空的div没有跨度。 这是可能的,还是它更有用,只是使用JavaScript来做到这一点。

基本上,我的意思是编译页面之前,你可以删除它的元素,基于一些条件语句,而不是之后的页面加载

+0

(包括库后),您需要使用JavaScript这个 – 2013-03-26 00:56:50

+1

我不知道我明白你在问什么,但是你不能用'PHP'来“删除”HTML。你需要'JavaScript'或'JQuery'来从'DOM'中删除它。 – Zak 2013-03-26 00:57:38

+0

要使用PHP,你需要一个AJ AX请求。看看[JQuery](http://www.jquery.com)。然后,您需要为跨度创建一个'click'方法,该方法调用发布或获取带有参数的PHP页面的ajax方法。 – Jon 2013-03-26 00:58:25

回答

7

看来你得到server sideclient side之间的困惑脚本语言。

PHP是一种服务器端语言,意思是一旦它被编译完成,它就不能在用户浏览器中动态改变。

另一方面,JavaScript是客户端脚本语言,可以动态地操作页面上的内容。

因此,一旦页面被渲染,您要求做的事情是不可能使用纯PHP的。

您可以使用AJAX技术从浏览器中已有的页面内使用JavaScript调用PHP脚本。然后,您可以使用AJAX请求调用的PHP脚本来返回可用于更新页面特定部分的内容,但是没有任何纯粹的PHP方式完全不涉及JavaScript。

1

你不能真正使用PHP删除一旦它已被呈现的HTML,但你可以使用条件在你的PHP代码有选择性地呈现某些部分的HTML取决于你在PHP中执行的测试的结果...

1

你不能使用php来移除DOM元素。你需要用javascript或jQuery来完成。

随着的JavaScript这将是如此

var element = document.getElementById("todelete"); 
element.parentNode.removeChild(element); 

而且随着jQuery的

$(document).ready(function() { 
    $("#todelete").remove(); 
});