如何使用PHP使用javascript?

场景:

我使用IF ELSE创建了一个过滤,当用户单击BOX A AND BOX B …然后假设BOX A已经满了,在用户点击“SAVE BUTTON”后,将显示一条确认消息,说明…… “你选择的Box已经满了。你想保存其他物品吗?“

这是我的代码:

 <?php //else if...... else if($box== "BOX A" && $row[item] == "100") { echo ""; echo "var r=confirm('The Box you chosen is already full. Do you want to save the other items?')"; echo "if (r==true){"; echo "alert('You pressed OK!')}"; echo "else{"; echo "alert('You pressed Cancel!')}"; echo ""; } ?> 

我的代码有问题,当我尝试使用echo "enter here";进行跟踪时echo "enter here"; 它在程序读取此代码后始终停止

  echo ""; 

然后它会跳到这里:

  echo ""; 

结果:

它没有显示弹出消息…所以我需要的是显示弹出消息,我不知道为什么,为什么它不显示…没有按钮涉及显示确认消息…它将只是在if if中传递然后如果用户想要继续保存,如果其中一个已经满了,如果不是他/她将按取消,它会提示…

注意:我只是PHP和Javascript的初学者..

先感谢您。

这是因为你开始新的 / 标签在另一个内部

 else if($box== "BOX A" && $row[item] == "100") { "; echo "var r=confirm('The Box you chosen is already full. Do you want to save the other items?')"; echo "if (r==true){"; echo "alert('You pressed OK!')}"; echo "else{"; echo "alert('You pressed Cancel!')}"; echo ""; ?> } 

应该

 else if($box== "BOX A" && $row[item] == "100") { echo ""; } 

但我个人认为

  else if($box== "BOX A" && $row[item] == "100") { ?>   

更清洁,更可读。 保持javascript不受PHP的影响,如果可以避免,请不要回复它。 在6个月内调查可能很困难。

或者你可以做这样的事情。

     

我假设你在这行之前放了一个php标签和一个if语句

 else if($box== "BOX A" && $row[item] == "100") 

事实是你不需要打开另一个php标签。 您已经在PHP中编写,因此您不需要再次指定它,因为它会导致您的代码失败。 你可以写这样的东西。

 else if($box == "BOX A" && $row[item] == "100") { ?>   
 $str = << document.write("Hello World!");  MY_MARKER; echo $str; 

你的问题基本上是因为当你回应你的javascript时,你会忘记那个; 角色仍然需要进行JS线:

  var r = confirm('The Box you chosen is already full. Do you want to save the other items?'); // <- this was missing if (r == true){ alert('You pressed OK!'); } else{ alert('You pressed Cancel!'); } "; } ?> 

我使用的小技巧是PHP echo允许新行而不会中断,因此您可以始终只回显一段代码并更容易地查看它