簡體   English   中英

發送多個post變量到另一個javascript文件

[英]sending multiple post variable to another javascript file

我有兩個單獨的javascipt文件和一個php文件,在第一個create.js上,我使用post將變量發送到get.php文件,然后我想將這些變量從get.php發送到register.js,如何我在register.js中獲得這些變量,並將其用於下一步?

這是第一個js文件中的代碼:

    var fs = $('#fname').val();
        var ls = $('#lname').val();
        var name = $('#adduser').val();
        var pass = $('#addpass').val();
        var cpass = $('#conpass').val();


        if (document.forms['form2'].fname.value == "" || document.forms['form2'].lname.value == "" || document.forms['form2'].adduser.value == "" || document.forms['form2'].addpass.value == ""){
            alert("Input the required Filled!");    
        }
        else{
            var vals;
            var request = $.ajax({
                url:"ifexist.php", type:"POST", 
                data:{
                  n:name
                }
            });                 
            request.done(function(data){
                vals = data; //alert(data);
                if (vals == "1"){
                    alert("Username Already Exist!");
                }   
                else
                    if(pass==cpass){

                            var request1 = $.ajax({
                                type: "POST",
                                url:"get.php",
                                data:{ fi:fs, la:ls, na:name, pa:pass}                                      
                            });
                            request1.done(function(data){   
                                alert("Not yet!");
                                location.href = 'captcha.html';
                            //  setTimeout(function() {location.href = 'captcha.html';},1500);          
                            });





                    }
                    else    
                        alert("Password did not match!");

            });
        }

這是第二個js文件:

    $.getJSON('get.php', function(data) {

                            // Inside your success callback:

                            var fir = $("#fi").html(data.uf);
                            var las = $("#la").html(data.ul);
                            var nam = ("#na").html(data.un);
                            var pas = $("#pa").html(data.up);

                            alert("Success!");

                                var request = $.ajax({
                                    type: "POST",
                                    url:"adduser.php",
                                    data:{ f:fir, l:las, n:nam, p:pas}                                      
                                });
                                request.done(function(data){    
                                    alert("Success!");
                                    //setTimeout(function() {alert("Success!");},1500);         
                                });

                        });

這是PHP文件:

    <?php

    $uf = $_POST['fi'];
    $ul = $_POST['la'];
    $un = $_POST['na'];
    $up = $_POST['pa'];

    //add to associative array

    $result['fi'] = $uf;
    $result['la'] = $ul;
    $result['na'] = $un;
    $result['pa'] = $up;

    // encode as json and echo
    echo json_encode($result);

    ?>

您無法做到這一點(將請求發送到瀏覽器。從技術上講,您可以作為推送服務使用,但這不是您所需要的,恕我直言,PHP處理起來很棘手)。

為什么您的ajax POST調用完成后不直接在JavaScript中通信? 我的意思是,您想發送什么到register.js? (不要忘記,即使它們是單獨的文件,它們也可以彼此通信,因為它們都包含在內)

       var post_data = { f:fir, l:las, n:nam, p:pas};

        var request = $.ajax({
              type: "POST",
              url:"get.php",
              data:post_data                                      
         });
         request.done(function(data){    
              alert(data); //will give you objects the -response form the server
              // now do whatver you need to do, cal an fucntion to create.js,  create trigger, etc.

           });       

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM