单击按钮时加载第二个div

时间:2013-11-24 03:51:42

标签: javascript php jquery

此代码的目的是在单击按钮时从PHP文件填充div。 还要在页面加载时预填充div - 我已完成此任务。

现在我想同时加载第二个div,我不确定如何解决这个问题。

function loadpage(clicked_id) {
  if (clicked_id != 0 || clicked_id != null || clicked_id !="") {
    $("#Table").load("marshfight1.php?action=fight&id="+ clicked_id);
    $("#mobs").load("marshtab.php");
  }
}

$(document).ready(function() {
  // initial
  $('#mobs').load('marshtab.php');
});

Echo "<div id=Table></div>";
Echo "<div id=mobs></div>";

$selem = mysql_query("SELECT * FROM senemies WHERE userid='$playerinfo[id]' && arena='10'");
while($enem = mysql_fetch_array($selem)) {
  Echo "<button><type=button id=\"$enem[id]\" onclick=\"loadpage(this.id)\" name=\"$enem[id]\">$enem[name]<br>Level: $enem[level]<br> HP: $enem[hp]</a></button>";
}

一切正常,除了第二个.load以更新#mobs。

1 个答案:

答案 0 :(得分:0)

问题似乎是在您的javascript中包含PHP。请记住,虽然PHP会抛出一个编译错误,IE会尽力而为,FF会尽力到达错误点然后非常安静地退出。因此它似乎正在工作,但实际上你的一半代码永远不会被执行。 FF中的ctrl-shift-k会给你一个错误的概述。

你需要的是ajax。这很容易在jquery和'直接'javascript中实现。

如果你已经知道这一点,请原谅我,但是其他人使用这个论坛,所以这个过程的简短摘要将是:

  1. 单击按钮,触发JS onclick功能。
  2. onclick函数将相应的数据(例如,哪个按钮和/或用户编号等)发送到php文件。
  3. onclick函数根据需要放置php在div中返回的内容。
  4. 你需要让你的js和php组织起来并分开。

    可以在http://www.w3schools.com/ajax/

    找到一个很好的概述和基本教程