执行JavaScript,将其放入之前使用jQuery/JavaScript打开的div中
我正在做一个评论系统。昨天我在stackoverflow问了同样的问题,但没有得到任何答案。现在我已经简化了代码,所以我希望它更容易理解。我也写完整的代码,如果有人想尝试它 主HTML页面有多个div执行JavaScript,将其放入之前使用jQuery/JavaScript打开的div中,javascript,jquery,Javascript,Jquery,我正在做一个评论系统。昨天我在stackoverflow问了同样的问题,但没有得到任何答案。现在我已经简化了代码,所以我希望它更容易理解。我也写完整的代码,如果有人想尝试它 主HTML页面有多个div <html> <head> <link rel="stylesheet" type="text/css" href="style.css"> <script src="http://code.jquery.com/jquery-3.0.0.min.js"&
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<script src="http://code.jquery.com/jquery-3.0.0.min.js"></script>
<script type="text/javascript" src="jscripts/actions.js"></script>
</head>
<body>
<div class="comments_div" id="comments_div" data-id="22" >
div_22--->
<div class="comments_more_22" id="comments_more"> </div>
</div>
<br>
<div class="comments_div" id="comments_div" data-id="23" >
div_23--->
<div class="comments_more_23" id="comments_more"> </div>
</div>
<br>
<div class="comments_div" id="comments_div" data-id="24" >
div_24--->
<div class="comments_more_24" id="comments_more"> </div>
</div>
<br>
</body>
…和comment.php(这里的代码将更加复杂,包括表单、验证码等)
-
单击
很好,不是吗?。
但是我需要执行另一个JavaScript:showText()。当您按以下顺序单击时,此脚本将工作:div_24、div_23、div_22。但当您尝试单击第一个div_22,然后单击div_23,。。。等等。我解决了这个问题:div“flash”必须有一个唯一的id,这样showText才能找到正确的div
<?php
echo 'post_id: ';
echo $_POST['post_id'];
$post_id=$_POST['post_id'];
?>
<div class="flash" id="flash_<?php echo $post_id; ?>">- </div>
<span style="margin-left:20px;"><small>click<a href='javascript: showText();'>here</a> </small></span><br/>
<script type="text/javascript">
//Put text in some div
function showText()
{
var post_id = "<?php echo $post_id; ?>" ;
document.getElementById("flash_" + post_id).textContent = 'works!';
}
</script>
首先,多个元素的id不能是samethaks,这是真的,但它不能解决问题。
<?php
echo 'post_id: ';
echo $_POST['post_id'];
?>
<div class="flash" id="flash">- </div>
<span style="margin-left:20px;"><small>click<a href='javascript: showText();'>here</a> </small></span><br/>
<?php
echo 'post_id: ';
echo $_POST['post_id'];
$post_id=$_POST['post_id'];
?>
<div class="flash" id="flash_<?php echo $post_id; ?>">- </div>
<span style="margin-left:20px;"><small>click<a href='javascript: showText();'>here</a> </small></span><br/>
<script type="text/javascript">
//Put text in some div
function showText()
{
var post_id = "<?php echo $post_id; ?>" ;
document.getElementById("flash_" + post_id).textContent = 'works!';
}
</script>