如果已检查php条件,则通过JQuery向元素添加类。 你好 此代码不起作用。 如果有人知道替代方法,我将不胜感激。谢谢。
<form method="post">
<input class="blue" name="btn" type="Submit" value="Submit" />
</form>
<?php
if(isset($_POST["btn"])){
$query = mysqli_query($con,"select * from table");
$row = mysqli_fetch_assoc($query);
$name = $row['name'];
if($name == "kamal"){
?>
<script type="text/javascript">
$('.blue').addClass('green');
</script>
<?php
}
else{
?>
<script type="text/javascript">
$('.blue').addClass('red');
</script>
<?php
}
}
?>
答案 0 :(得分:1)
实际上您必须添加$(document).ready
像这样:
$(document).ready(function(){
$('.blue').addClass('red').removeClass('blue');
});
这样,您可以在文档加载后调用jquery函数
-编辑-
通过方式,我建议您将其全部制成php或全部javascript。用php发送表单并用jquery替换类没有任何意义。实际上,您可以使用php中的简单echo来通过新类进行相同的打印结果。
但是,如果要使其动态化,可以使用jquery通过Ajax发送表单,以防止提交,从php路由获取响应并动态显示颜色变化而无需重新加载页面
答案 1 :(得分:0)
我建议您通过php处理此问题,因为在此示例中它更合逻辑
在这种情况下,我将类存储在变量中,并将其直接回显到元素的class属性中,如下所示:
<?php
$input_class = '';
if(isset($_POST["btn"])){
$query = mysqli_query($con,"select * from table");
$row = mysqli_fetch_assoc($query);
$name = $row['name'];
if($name == "kamal"){
$input_class = 'green';
}
else{
$input_class = 'red';
}
}
?>
<form method="post">
<input class="blue" name="btn" type="Submit" value="Submit" class="<?php echo $input_class; ?>"/>
</form>