任何人都可以帮助我:
我正在尝试添加一个类名/使用jquery更改div的css;点击表单上的提交后。意味着,在单击提交后,当页面重新加载此类名/更改时,应该坚持使用目标元素。我使用PHP来获取提交的表单的值。 (没有ajax,但如果有必要,我可以修改我的代码)。我试图通过jquery做到这一点但是当页面重新加载时,更改已经消失了!
感谢。
更新:以下是我正在处理的示例代码(so.php本身)。提交表单并重新加载页面后;说我想在点击的输入中添加一个类并在CSS中管理样式:
<html>
<head>
</head>
<body>
<form id="myForm" action="so.php" method="get">
<input name="Load" type="submit" value="Google" />
<input name="Load" type="submit" value="MSN" />
<input name="Load" type="submit" value="Yahoo" />
</form>
<div id="container">
<?php
if (isset($_GET['Load'])) {
$value = $_GET['Load'];
echo "<iframe width=\"560\" height=\"349\" src=\"http://www.{$value}.com\"></iframe>";
}
?>
</div>
</body>
</html>
update2:我尝试了@NoPyGod提供的逻辑并且运行正常。但事情就是这样。我正在尝试向选中的按钮添加一个类,并且在提交表单并重新加载页面后,使用id“hello”更新div中的文本,并使用单击的输入值或处于活动状态。这是我结束的那个,但一旦提交了表格 所有输入都具有相同的类名,div中的文本也不会更新。
<html>
<head>
<?php if (isset($_GET['Load'])): ?>
<script>
$(document).ready(function() {
$('#hello').text('Hello');
});
</script>
<?php endif; ?>
</head>
<body>
<form id="myForm" action="so.php" method="get">
<input class="<?php if (isset($_GET['Load'])) { echo "some_class"; } if (isset($_GET['Load1'])) { echo "some_class1"; }?>" name="Load" type="submit" value="Google" />
<input class="<?php if (isset($_GET['Load'])) { echo "some_class"; } if (isset($_GET['Load1'])) { echo "some_class1"; }?>" name="Load1" type="submit" value="Rediff" />
<input class="<?php if (isset($_GET['Load'])) { echo "some_class"; } if (isset($_GET['Load1'])) { echo "some_class1"; }?>" name="Load" type="submit" value="Yahoo" />
<input class="<?php if (isset($_GET['Load'])) { echo "some_class"; } if (isset($_GET['Load1'])) { echo "some_class1"; }?>" name="Load1" type="submit" value="Sify" />
</form>
<div id="container" >
<?php
if (isset($_GET['Load'])) {
$value = $_GET['Load'];
echo "<iframe width=\"560\" height=\"349\" src=\"http://www.{$value}.com\"></iframe>";
}
if (isset($_GET['Load1'])) {
$value = $_GET['Load1'];
echo "<iframe width=\"560\" height=\"349\" src=\"http://www.{$value}.com\"></iframe>";
}
?>
</div>
<div id="hello"></div>
</body>
</html>
答案 0 :(得分:1)
提交页面时,设置一个类似的变量
$was_submitted = true;
然后在你的HTML中做这样的事情
<div id="myid" class="<?php if ($was_submitted) { echo "some_class"; } ?>">
或者,如果您绝对坚持使用jQuery进行更改,请将其包含在您的html中 -
<?php if ($was_submitted): ?>
<script>
$(document).ready(function() {
$("#myid").addClass("some_class");
});
</script>
<?php endif; ?>
更新:
<html>
<head>
</head>
<body>
<form id="myForm" action="so.php" method="get">
<input name="Load" type="submit" value="Google" />
<input name="Load" type="submit" value="MSN" />
<input name="Load" type="submit" value="Yahoo" />
</form>
<!-- I changed this line below -->
<div id="container" class=<?php if (isset($_GET['Load'])) { echo "some_class"; } ?>>
<?php
if (isset($_GET['Load'])) {
$value = $_GET['Load'];
echo "<iframe width=\"560\" height=\"349\" src=\"http://www.{$value}.com\"></iframe>";
}
?>
</div>
</body>
</html>