将PHP变量值传递给jquery函数

时间:2010-03-03 11:33:14

标签: php jquery function

我是Jquery的新手。我有一个具有复选框的项目,如果它们的状态发生变化,那么我会更新一些sql表。

但我决定先从简单的事情开始,了解它是如何运作的......

所以,我想传递给Jquery函数,如果复选框状态改变,则传递给php变量。

我有这段代码:

<?php ?>

<HTML>
 <HEAD>
  <TITLE> New Document </TITLE>
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
    <script type="text/javascript" src="jquery-1.4.2.js"></script>
    <script type="text/javascript">
      function my_function(var mensagem_id)
        {
            alert("Sucesso, Mensagem nº: " + mensagem_id);
        }
    </script>
 </HEAD>

 <BODY>
 <?php 
    $mensagem_id = "3";
    echo $mensagem_id; 
 ?>
  <input type='checkbox' name='lida' value='mensagem_id' onchange='my_function($mensagem_id)'/>
 </BODY>
</HTML>

但是在firebug中我一直收到消息(函数my_function()未定义)...

任何人都可以帮助我吗?

3 个答案:

答案 0 :(得分:1)

jQuery在客户端上运行,而PHP在服务器上运行。因此,没有办法将PHP变量传递给jQuery函数。您可以直接写入onchange回调:

<input type='checkbox' name='lida' value='mensagem_id' onchange='my_function( <?php 
    $mensagem_id = "3";
    echo $mensagem_id; 
 ?>
)'/>

另请注意,在jQuery中,您应该避免以这种方式设置事件,而是使用jQuery事件:

$('#myinputid').change(function() {
});

另一种方法是使用PHP变量设置隐藏字段,并使用javascript / jQuery代码在客户端读取它。

答案 1 :(得分:1)

从函数定义中取出“var”,并在<?php echo调用中的?>周围使用$mensagem_idonchange

但你根本就没有使用jQuery,只是简单的Javascript。

答案 2 :(得分:0)

我认为您不必在函数参数中使用var ...