Html与php中的javascript似乎存在冲突


Html with javascript in php seems to be conflicting

我想进入php语句的代码是

<a href="javascript:void();"
   onclick="document.loginfrm.user.value="username";
   document.loginfrm.pass.value="password";
   document.loginfrm.submit();">login
</a>

所以我通常会做的是用一个回声和引号包围它:然后用这些-->(')替换语句中的任何引号,所以我就是这么做的。。。出于某种原因,它似乎严重曲解了这个句子。这是我在php中输入的代码。

   echo "<a href='javascript:void();'
   onclick='document.loginfrm.user.value='username';
   document.loginfrm.pass.value='password';
   document.loginfrm.submit();'>". login ."</a>";

浏览器就是这样解释的:

    <a href="javascript:void();
" onclick="document.loginfrm.user.value=" username';="" 
document.loginfrm.pass.value="password" ;="" document.loginfrm.submit();'="">
login</a>

因此,是的,有没有任何方法可以在php中显示html来解决这个问题

你能试试这个吗,添加了'

    echo "<a href='"javascript:void();'"
       onclick='"document.loginfrm.user.value='username';
       document.loginfrm.pass.value=password';
       document.loginfrm.submit();'">login </a>";

您需要正确地对其进行转义。尝试

echo "<a href='"javascript:void();'"
   onclick='"document.loginfrm.user.value='username';
   document.loginfrm.pass.value='password';
   document.loginfrm.submit();'">". $login ."</a>";

您没有转义引号。尝试:

echo "<a href='"javascript:void();'"
onclick='"document.loginfrm.user.value='username';
document.loginfrm.pass.value='password';
document.loginfrm.submit();'">". login ."</a>";

应该产生:

<a href="javascript:void();"
   onclick="document.loginfrm.user.value='username';
   document.loginfrm.pass.value='password';
   document.loginfrm.submit();">login
</a>

正如您现在所拥有的,当您在"username"值的开头点击引号时,您正在关闭onclick属性,这意味着浏览器正在将username解释为另一个属性,从那以后它会变得更加混乱。。。

编辑:对不起,修复了html,而不是php代码

您应该这样做。。

<a href="javascript:void();"
   onclick="document.loginfrm.user.value='username';
   document.loginfrm.pass.value='password';
   document.loginfrm.submit();">login
</a>

php应该是

echo '<a href="javascript:void();"
          onclick="document.loginfrm.user.value='"username'";
          document.loginfrm.pass.value='"password'";
          document.loginfrm.submit();">
          login
      </a>';