PHP中的脚本问题

时间:2011-01-25 17:07:42

标签: php javascript

<?php
  echo "<script type='text/javascript'>$('#tnxerror_captcha').html('test');</script>";
?>
<div class="tnxerror" id="tnxerror_captcha"></div>

以上代码无效。

2 个答案:

答案 0 :(得分:1)

这可能是因为您在页面完全加载之前尝试修改DOM元素。您需要在页面加载后运行您的JavaScript。你可以用jQuery的ready

来做到这一点
$(document).ready(function() {
   $('#tnxerror_captcha').html('test')
});

我注意到你评论说你有条件。即使有条件,你也可以这样做:

<?php
 if($a) {
?>

<script type = "text/javascript">
    $(document).ready(function() {
       $('#tnxerror_captcha').html('test')
    });
</script>

<?php
  }
?>

答案 1 :(得分:1)

试试这个:
你试图访问tnxerror_captcha'甚至在DOM中可用之前

<?php
          echo "<script type='text/javascript'>$(function(){$('#tnxerror_captcha').html('test');});</script>";      
?> 

更好的方法是嵌入javascript rahter而不是echo,因为你需要动态的html生成:

<?php if(SOME_CONDITION){?>
    <script type='text/javascript'>
     $(function(){
      $('#tnxerror_captcha').html('test');
    });
    </script>
<?php } ?>