我需要在用户写入时立即将输入类型文本的值保存在PHP变量中。我发现JQuery中的blur事件可以触发在写入输入类型文本后发生的事件,所以我有以下内容:
<script>
$("document").ready( function()
{
$("#primerApellido").blur(function() {
alert('out');
<?php
$primerApellidoForm =
"<script type=\'text/javascript\'>
$('#primerApellido').val();
</script>
";
?>
});
});
</script>
这是我的输入类型文字:
<input type="text" id="primerApellido" name="primerApellido" value="<?php echo $primerApellidoForm?>"/>
正如您所看到的,我需要在用户离开文本框后立即保存PHP变量输入中输入的内容。现在它从字面上保存了Javascript变量赋值,而不是我需要的值。
如何将文本框中的键入值与PHP变量相关联?
答案 0 :(得分:3)
我认为你可能会混淆PHP和Javascript。 PHP仅在服务器上运行。 Javascript只能在浏览器上运行。
您不能直接从javascript修改PHP变量。
然而,您可以做的是对另一个页面进行ajax调用以对该变量执行某些操作,例如将其保存在会话中或数据库中。
查看Javascript jQuery ajax命令。使用此命令,您可以运行另一个页面,而无需离开当前所在的页面。您可以将该页面设置为接收变量并使用它执行操作的PHP页面。
答案 1 :(得分:0)
试试这个..
$("#primerApellido").onkeyup(function() {
var user_input = $(this).val();
$.ajax({
type:'GET',
url: 'path/to/your/phppage',
data:{user_input:user_input},
success: function(response) {
//alert(response);
}
});
});
答案 2 :(得分:0)
我遵循Mark Carpenter的建议使用Ajax功能,下面是我想要的代码:
$("document").ready( function()
$("#primerApellido").blur(function() {
$.ajax({
type: "GET",
url: "destinationURL.php",
data: "primerApellidoForm="+$('#primerApellido').val(),
success: function(msg){
alert( "Data Saved: "+msg);
}
});
});
});
现在PHP变量“primerApellidoForm”的值来自$('#primerApellido')。val()输入类型。
答案 3 :(得分:-1)
不确定您要做的是什么。一旦你加载了页面,你就无法运行php代码(你可以制作ajax请求)。希望以下有所帮助。
答案 4 :(得分:-1)
你可以试试这个......
<script type="text/javascript">
$("#primerApellido").blur(function() {
<?php $primerApellidoForm = "<script>document.write($(this).val());</script>"?>
});
</script>