Javascript 如何使用jquery ajax将数据传递到另一个页面

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/30314780/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-23 04:58:32  来源:igfitidea点击:

How to pass data to another page using jquery ajax

javascriptphpjqueryajax

提问by kathleen55

I have a problem on ajax call.

我在 ajax 调用上有问题。

Here is my code regarding the ajax:

这是我关于ajax的代码:

$('#Subjects').click(function() {
    $.ajax({
        type: 'POST',
        url: '../portal/curriculum.php',
        data: 'studentNumber='+$('#StudentID').val(),
        success: function(data)
        {
            $('#curriculum').html(data);
        }
    });
});

When I echo studentNumberon another page, the studentNumberis undefined. Why is that?

当我studentNumber在另一个页面上回显时,studentNumberundefined. 这是为什么?

回答by Terry Lin

Simply modify your code like this:

只需像这样修改您的代码:

JS

JS

$('#Subjects').click(function() {
    $.ajax({
        type: 'POST',
        url: '../portal/curriculum.php',
        data: { studentNumber: $('#StudentID').val() },
        success: function(data)
        {
            $('#curriculum').html(data);
        }
    });
});

PHP

PHP

<?php

    $var = $_POST['studentNumber'];

?>

If you still can not make it works.. other things you should consider..

如果你仍然不能让它工作..你应该考虑的其他事情..

url: '../portal/curriculum.php',

1) Please use full URL http://yourdomain.com/portal/curriculum.phpor absolute path like /portal/curriculum.php

1) 请使用完整的 URLhttp://yourdomain.com/portal/curriculum.php或绝对路径,如/portal/curriculum.php

2) Add an error callback to check out the error message

2) 添加错误回调以查看错误信息

$('#Subjects').click(function() {
    $.ajax({
        type: 'POST',
        url: '../portal/curriculum.php',
        data: { studentNumber: $('#StudentID').val() },
        success: function(data)
        {
            $('#curriculum').html(data);
        },
        error: function (xhr, ajaxOptions, thrownError) {
            alert(xhr.status);
            alert(thrownError);
        }
    });
});

回答by Sampath Sri Anuradha

 $('#Subjects').click(function() {
      $.ajax({
      type: 'POST',
      url: '../portal/curriculum.php',
      data: { studentNumber: $('#StudentID').val() },
      success: function(data)
       {
        //here data is means the out put from the php file it is not $('#StudentID').val()
        $('#curriculum').html(data);
       }
      });
    });

as exsample if you echo some text on php it will return with data $('#curriculum').html(data);

作为示例,如果您在 php 上回显一些文本,它将返回数据 $('#curriculum').html(data);

try to change

尝试改变

//change
success: function(data)
{
   $('#curriculum').html(data); 

//to 
success: function(result)
{
   $('#curriculum').html(result);

check what will happen. post us php file too curriculum.php

检查会发生什么。将 php 文件也发布给我们curriculum.php

回答by makemelive

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("button").click(function(){
        $.post("test1.php",
        {
          name: "Makemelive Technologies",
          city: "Mumbai"
        },
        function(data,status){
            alert("Data: " + data + "\nStatus: " + status);
        });
    });
});
</script>
</head>
<body>

<button>Send an HTTP POST request to a page and get the result back</button>

</body>
</html>

The above will make a call to test1.php and its code will be

上面将调用 test1.php 其代码将是

<?php

$fname=$_REQUEST['name'];
$city= $_REQUEST['city'];

echo "Company Name is ". $fname. " and it's located in ". $city ;

?>

回答by Ghanshyam Nakiya

You can use through Jquery,Ajax and php

您可以通过 Jquery、Ajax 和 php 使用

step 1. index.php

步骤 1. index.php

<div id="div_body_users">
</div>
<form method="post" id="frm_data" action="">
<input type="button"  id="target" name="submit" value="submit">
<input type="key" id="key" name="key" value="1234">
</form>
<script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
<script>
$(document).ready(function(){
   $( "#target" ).click(function() {
//  alert("test");
  var frm_mail = document.getElementById("frm_data");
  var frm_mail_data = new FormData(frm_mail);
    $.ajax({
        url: "http://localhost/test.php",
      data: frm_mail_data,
                    cache: false,
                    processData: false,
                    contentType: false,
        type: 'POST',
        success: function (result) {
             document.getElementById('div_body_users').innerHTML=result;
        }
    });

 });

});
</script>

step 2. create test.php

步骤 2. 创建 test.php

  <?PHP

 //print_r($_POST);

if($_POST['key']=='1234'){
    echo "success";
    exit(0);
 }
 ?>

回答by safeer

$.ajax({
    type: "GET",
    url: "view/logintmp.php?username="+username+"&password="+password,
}).done(function( msg ) {
    var retval = printmsgs(msg,'error_success_msgs');
    if(retval==1){
        window.location.href='./';
    }
});