Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/459.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 添加两个事件_Php_Javascript_Jquery - Fatal编程技术网

Php 添加两个事件

Php 添加两个事件,php,javascript,jquery,Php,Javascript,Jquery,我有一个表单,它会将一些数据发送到php文件,然后返回一些结果,例如: <form action"<?php $_SERVER['PHP_SELF']?>" method="post" id="data"> <input type"text" name="first_name"/> <input type="text" name="last_name"/> </form> 这将阻止将输入表单提交到php文件的默认操作,问题是我

我有一个表单,它会将一些数据发送到php文件,然后返回一些结果,例如:

<form action"<?php $_SERVER['PHP_SELF']?>" method="post" id="data">
  <input type"text" name="first_name"/>
  <input type="text" name="last_name"/>
</form>
这将阻止将输入表单提交到php文件的默认操作,问题是我是否可以为php文件发送表单数据,并为同一表单发送同一时间捕获事件

注意,另一个php需要从php文件返回的数据 作用

$(“#数据”).submit(函数(e){
e、 预防默认值();
$.post(“,$(this).serialize(),函数(r){//dosomeaction});
});
$(“#数据”)。提交(函数(e){
e、 预防默认值();
$.post(“,$(this).serialize(),函数(r){//dosomeaction});
});

要防止表单提交(即页面重新加载)的默认行为,您需要这样使用

$("#data").submit(function(event){
    event.preventDefault();
    //some code .....
});
要在不刷新页面的情况下将表单数据发布到
php
,您需要使用jQuery可用的
ajax
方法,如(将使用
httppost
方法发送表单值)

如果您的php脚本以
json
格式返回数据,您可以使用php设置
内容类型
标题,或者通过在第四个参数中指定
dataType
json
强制jQuery将返回数据视为
json
,如

   $.post('some_script.php',$(this).serialize(),function(data){
        // Just to check if everything is working well
        console.log('Form Submitted Successfully.');
        // do whatever you want with the data
   },'json');

要防止表单提交(即页面重新加载)的默认行为,您需要这样使用

$("#data").submit(function(event){
    event.preventDefault();
    //some code .....
});
要在不刷新页面的情况下将表单数据发布到
php
,您需要使用jQuery可用的
ajax
方法,如(将使用
httppost
方法发送表单值)

如果您的php脚本以
json
格式返回数据,您可以使用php设置
内容类型
标题,或者通过在第四个参数中指定
dataType
json
强制jQuery将返回数据视为
json
,如

   $.post('some_script.php',$(this).serialize(),function(data){
        // Just to check if everything is working well
        console.log('Form Submitted Successfully.');
        // do whatever you want with the data
   },'json');


您需要使用将数据发送到php。如果另一个
php函数需要您的
返回数据
,为什么不首先调用该php函数,然后再将数据作为ajax返回发送,并将第二个php函数的
最终输出
作为ajax响应返回。@Joy,如果我想用jquery显示结果,我可以通过jquery中的回调函数捕获返回的数据并显示结果,但是我想用php在同一个页面中显示结果,我认为这样会更好、更快,对吗?加载页面后,不能仅用php加载同一页面中的任何数据,不刷新页面(新请求)。要做到这一点,您必须使用
AJAX
,在jQuery中获得
数据作为
AJAX请求的结果后,您可以向使用jQuery的用户显示
消息/结果。由于您已经从
php
获得了这些数据,这表明使用jQuery/JS不会花费太多时间。您需要使用将数据发送到php。如果另一个
php函数需要您的
返回数据,为什么不首先调用该php函数,然后再将数据作为ajax返回发送,然后从第二个php函数返回
最终输出
,如果有的话,作为ajax响应。@Joy,如果我想通过jquery显示结果,我可以通过jquery中的回调函数捕获返回的数据并显示结果,但我想用php在同一页面中显示结果,我认为这样会更好、更快,是吗?加载页面后,如果不刷新页面(新请求),就不能仅使用php加载同一页面中的任何数据。要做到这一点,您必须使用
AJAX
,在jQuery中获得
数据作为
AJAX请求的结果后,您可以向使用jQuery的用户显示
消息/结果。由于您已经从
php
获得了这些数据,这表明使用jQuery/JS不会花费太多时间。他们可能还想使用
$(this).serialize()
从表单获取所有输入,而不是单独列出它们。@Mohit Bumb,在这种情况下,php文件中的返回数据将返回到javascript中的回调函数,并且不能在任何php函数中再次使用它,我需要通过php代码再次处理返回的数据。他们可能还希望使用
$(this).serialize()
来获取表单中的所有输入,而不是单独列出它们。@Mohit Bumb,在这种情况下,php文件的返回数据将返回到javascript中的回调函数,并且不能在任何php函数中再次使用它,我需要用php代码再次处理返回的数据。如果不需要处理php文件中返回的数据并用javascript处理数据,这将是正确的解决方案,在我的情况下,我需要用php再次检查和处理返回的数据@moata_,我刚刚添加了
console.log
作为快速示例,您可以在成功回调中对返回的数据执行任何操作。好的,您的意思是,在第一次发布成功后,我可以再次使用$.post(url,data,callback)将返回的数据传递给php文件吗!您可以使用JS处理返回的数据,但是如果您的
处理
需要使用
JS/jQuery
无法完成的操作,那么您可以在成功回调中再次
发布
。但这不是必要的,也没有意义。由于您刚刚从一个
php脚本
返回了数据,为什么不在将数据作为ajax调用的返回发送之前对其进行处理呢?我将把表单的输入发送到同一页面,然后检查哪个输入是空的或不是空的,因此我将使用这些值调用php函数来创建mysql查询(这是一个搜索过滤项目),所以我需要这样做。无论你的答案是什么,都是有帮助的。如果不需要处理从php文件返回的数据并用javascript处理数据,这将是正确的解决方案,在我的情况下,我需要用php aga检查并处理返回的数据
   $.post('some_script.php',$(this).serialize(),function(data){
        // Just to check if everything is working well
        console.log('Form Submitted Successfully.');
        // do whatever you want with the data
   },'json');