将表单输入存储在javascript变量中,然后在不提交表单的情况下将其值传递到php变量中


Store a form input in a javascript variable and then pass its value in a php variable without submitting form?

我想做的是每当用户在文本字段输入中填写他的地址时,我想用javascript在模糊上抓取它,这是我能够做到的。现在,如何在PHP变量中传递这个变量,以便我可以使用它进行一些操作?javascript文件在PHP文件中被调用。

先从表单元素中提取数据

var dataObject = {};
// #search is the form with search params
$.each($('#form name').serializeArray(), function(i, field) {
dataObject[field.name] = field.value;
});

然后POST数据到php

    $.ajax({  
         type: "POST",  
         url: "./api.php",  
        data: dataObject,
        success: function(dataout) {
            //dataout is what is returned from php
            //process it how you like from here
        }
    });

在php中使用POST data

<?php
   $element1 = $_POST["form_element_name1"];
   $element2 = $_POST["form_element_name2"];
   ...do something
   print $result;
?>

打印结果在ajax函数中输出到dataout ..从那里开始处理

PHP是一种服务器端语言,因此在从客户端计算机调用页面后,页面上不再有PHP,而只是转换为HTML。如果你想在PHP中做一些事情,那么你必须POST(很容易用jQuery完成)数据到一个PHP文件的新实例,这样它就可以在服务器上编译。

形式为

的页面
$.post('name_of_php_file_to_send_data_to.php', {name: value}/* <-- data to pass to the PHP file*/,function(output) {
    // do something with the returned output of the PHP file
});