我的问题很简单。
我有以下代码:
<div class="last"
<?php
if hasClass(last){
echo " style='width:100%;' ";
}
?>
></div>
我知道if
声明是错误的,但这个想法就在那里。我想知道如何检查此div
是否包含.last
类,然后是echo
。
我一直在四处寻找,但没有做任何事情(虽然没有找到太多)。
最好的问候。
答案 0 :(得分:1)
正如评论中已经说过,PHP可以使用DOM解析器。
我将给你2个非常简单的解决方案,这将为你节省大量的工作:
CSS:
<style>
.last {
width:100%;
}
</style>
jQuery的:
<script type="text/javascript">
$(document).ready(function(){
if($('div').hasClass('last')){
$('div').css('width', '100%');
}
});
</script>
答案 1 :(得分:0)
PHP在服务器上运行,因此它生成HTML。如果你有那个班级=&#34;那么&#34;你不需要检查 - 它是代码的一部分......硬编码。
但是你可以拥有一些PHP变量,并且根据它可以打印出类和其他元素的样式:
<?php
$print_last = true;
?>
...
<div <?php if ($print_last) echo 'class="last" ';
<?php
if ($print_last){
echo " style='width:100%;' ";
}
?>
></div>
但是如果你想检查html元素,你必须在JavaScript的客户端(浏览器)上进行检查,jQuery也可以提供帮助。
答案 2 :(得分:0)
可以检查使用PHP,但是无法轻松完成(你需要使用DOM解析器解析缓冲的HTML,然后查找div等等)....好多了解决方案是使用Document.getElementsByClassName()
函数使用Javascript / jQuery执行此操作。
样本解决方案:
var elements = document.getElementsByClassName("last");
for(var i = 0; i < elements.length; i++)
{
var element = elements[i];
element.style.width = "100%";
}
答案 3 :(得分:0)
@azhpo 显然,HTML是前端语言,你必须通过一些提交按钮或通过ajax请求传递元素。
使用提交按钮:使用javascript
选择div的类名var className = document.getElementById(&#34; myDIV&#34;)。className document.getElementById(&#34; myHiddenField&#34;)。value = className;
现在点击提交按钮,它将被提交
使用ajax: 再次通过javascript / jquery获取类名 var className = jQuery(&#34; #myDiv&#34;)。attr(&#34; class&#34;); 现在触发ajax查询并将类名发送到脚本
jQuery.ajax({
url: 'file.php',
type: 'POST',
data: 'class='+className,
success: function(data){//do whatever you want},
error:function(){//do whatever you want}
});