繁体   English   中英

jQuery发布不触发两次

[英]Jquery post not firing twice

我有一种形式,只要用户在电话字段上键入内容,该字段值就会发送到php,该php将获取该电话字段的任何可能的名称和电子邮件,并将其存储在PHP会话变量中:

这是我在电话领域的jQuery:

$('#tel').on('keyup', function() {
$.post('backproc.php?tel='+$('#tel').val());
$('#nombres').val('<?php echo $_SESSION['xnombre'];?>');
});

我的backproc.php可以正确接收信息,并且可以从数据库正确检索所有内容,无论我输入什么类型,它始终可以由php查询成功发送和处理。

问题是,根据我的代码,每次我在电话字段上释放密钥时,nombres字段的值都应根据会话变量上的值进行更改,这种情况会发生,但只会触发一次,永远不会触发但是,当它触发时,它会显示一个先前的会话变量值,而不是最后一个获取的值,关于如何显示总是获取最后一个获取的值的任何想法?

您需要在backproc.php中回显$ _SESSION ['xombre']的内容,并在jQuery中获取它,例如

$.post('backproc.php?tel='+$('#tel').val(), function(data) {
    $('#nombres').val(data);
});

参见http://api.jquery.com/jQuery.post/

问题是您的<?php echo $_SESSION['xnombre'];?>代码是在Javascript甚至发送到浏览器之前在服务器上生成的。 PHP之间的代码<? ?>标记根本根本不会发送到客户端-它完全由服务器处理。 但是,JavaScript当然是在客户端上处理的。

您会在服务器端代码和客户端代码之间感到困惑。

如果您查看网页源代码并查看Javascript,就会明白我的意思。

编辑:只是意识到我告诉你问题了,没有给出答案! 2cents的答案是正确的,所以我不再重复他已经说过的话。

用户按下键时触发。 在用户按住键的同时重复此操作。 当实际字符插入到例如文本输入中时触发。 在用户按住键的同时重复此操作。

您好,“ keydown”事件适用于您的情况(不要使用按键向上操作,因为一旦您松开按键,它就会触发一次)。 使用keydown(我确定它可以使用,但是如果不使用keypress)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM