在PHP echo中嵌入javascript

时间:2010-11-08 11:29:14

标签: php javascript jquery variables echo

echo "<td> + manuf + </td>";

这是否会继续发挥作用?

我从mysql数据库中提取结果来编辑内容,但需要jQuery功能来编辑它,因此嵌入的javascript变量......

编辑:

对于缺乏上下文感到抱歉,它与我在此处提出的另一个问题相关Mysql edit users orders they have placed 这是最终目标。要编辑我下的订单,我需要将结果拉入类似于用户下订单的环境。所以我的想法是包括jQuery功能将项目添加到购物车等,然后他们可以按提交和我使用相同的方式.Ajax将数据发布到插入PHP脚本我会将值发布到更新PHP脚本!这是倒退的想法,欢迎任何建议!

7 个答案:

答案 0 :(得分:2)

我建议你看看下面的内容。

现在,在您的情况下,您最简单的解决方案是使用json_encode方法。让我举个例子:

$json_data = array(
    'manuf' => $some_munaf_data
);

echo "<script type=\"text/javascript\">";
   echo "var Data = " . json_encode(json_data);
echo "</script>";

这会生成一个名为Data的对象,看起来像这样:

<script type="text/javascript">
var Data = {
    munaf : "You value of $some_munaf_data"
}
</script>

然后,当您需要数据时,只需使用Data.munaf,它将保留PHP端的值。

答案 1 :(得分:1)

你不会在Javascript代码岛中回应jQuery吗?您需要基于客户端的代码(jQuery)才能在服务器端代码(PHP)之后执行。

echo '<td><script language = "JavaScript" type = "text/JavaScript">document.write("");</script></td>';

答案 2 :(得分:1)

尝试使用PHP发布MySQL内容:

echo "<td id='manuf'>".$manuf."</td>"

然后使用jQuery获取内容:

var manuf = $('#manuf').text();

答案 3 :(得分:0)

  

这是否会继续发挥作用?

不。您需要为浏览器输出有效的JavaScript来解释:

echo "<script>document.write('<td>'+manuf+'</td>')</script>";

但这是一个可怕的构造,我不明白为什么你需要这个,因为td的内容最初可能是静态的。

答案 4 :(得分:0)

请假设您使用php回显表:

<table id="sometab">
 <tr>
  <td>
  </td>
 <tr>
</table>

在任何td中打印结果的jquery是:nth-​​child(2)需要2个表td对象:

<script type="text/javascript">
$(function(){
   $("#sometab tr td:nth-child(2)").html("bla");
})   
</script>

答案 5 :(得分:0)

我认为你不能像这样在php中嵌入jquery变量。 你只需要点击这里给出类名,当点击编辑时你会得到变量,就像提交点击其他问题一样。

答案 6 :(得分:0)

“manuf”是JS变量还是PHP输出的一部分,例如生成的一部分?

基本上这可以通过以下方式轻松完成: 通过PHP的mysql(*我不能把表标签......接受。):

while($row = mysql_fetch_object($result)) {
  echo 'tr';
  echo 'td a href="#" class="myres"'.$row->manuf.'/a /td';
  echo '/tr';
}

然后在你的JS上只附加一个“点击”处理程序

$(function() {
   $(".myres").click(function() {
        //my update handler...
   });
});