我是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()未定义)...
任何人都可以帮助我吗?
答案 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_id
和onchange
。
但你根本就没有使用jQuery,只是简单的Javascript。
答案 2 :(得分:0)
我认为您不必在函数参数中使用var
...