-4

我有以下脚本。它正在制作带有用户名的div,在href部分之前工作正常,php页面打开user=$user(变量不接受它的值)

例如 $user='george'在 div id 和 getElementById 中,但在 href 中user=$user?为什么?提前致谢,

<script>
$(document).ready(function(){
for(i = 0; i < 1; i++) {
  $('body').append('<div id="div'+'<?php echo $user; ?>'+'"/>');  //$user='george'
  document.getElementById('div'+'<?php echo $user; ?>'+'').innerHTML=
 '<?php echo $user;                                           //$user='george' 
    echo '<a href="account_show_to_members.php?user=$user">   //$user=$user WRONG
      Visit!</a>';   ?>   ';                           
   }
 });
 </script>  
4

1 回答 1

0

问题是 php 不会处理带有单引号的字符串中的内联变量,也不会像\n. 你应该开始的第一个地方是改变这个:

echo '<a href="account_show_to_members.php?user=$user">   //$user=$user WRONG
      Visit!</a>';

对此:

echo "<a href='account_show_to_members.php?user=$user'>Visit!</a>";

不过,一定要研究一些格式标准,这段代码有点乱。

编辑:只是为了避免混淆,下面是它的外观:

<script>
    $(document).ready(function(){
        for(i = 0; i < 1; i++) {
            $('body').append('<div id="div<?php echo $user; ?>"/>');
            document.getElementById('div<?php echo $user; ?>').innerHTML = '<?php echo $user." <a href=\"account_show_to_members.php?user=$user\">Visit!</a>"; ?>';                           
        }
    });
</script>

这可能也可以直接写入 dom,而无需通过 javascript 传递。节省了大量的开销和复杂性。不是想成为一个混蛋,只是提供友好的建议。

于 2013-10-24T15:47:10.093 回答