简体   繁体   English

jQuery,通过ajax获取数据,然后提交表单

[英]jquery, get data via ajax then submit form

I'm trying to get data via ajax then send it through a form. 我试图通过ajax获取数据,然后通过表单发送数据。 However it doesn't seem to be working. 但是,它似乎不起作用。 Any ideas what im doing wrong? 任何想法我做错了什么?

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>

<form method="get" action="test.php">
    <input id="myvar" type="hidden" name="albumid" />
    <button type="submit" id="btnsubmit">Submit</button>
</form>

<script type="text/javascript">
    $('form').submit(function() {  
     $.ajax({
            url: "newAlbum.php",
            success: function(data){
            var album = data;
                 $('#myvar').val(album);
             }
          });   

    });
</script>

newAlbum.php newAlbum.php

<?PHP echo '11'; ?>

test.php test.php

<?php echo $_GET["albumid"]; ?>

Okay try adding as follows: 好吧,尝试添加如下:

 $('form').submit(function() {  
       $.ajax({
        url: "newAlbum.php",
        async:false,
        success: function(data){
        var album = data;
             $('#myvar').val(album);
         }
      });   

});

As someone else pointed out - you need to add the data parameter. 正如其他人指出的那样-您需要添加data参数。 But I would also use $(this).serialize() , since that will fetch all form input elements. 但是我也将使用$(this).serialize() ,因为那样会获取所有表单输入元素。

<script type="text/javascript">
    $('form').submit(function() {  
        $.ajax({
            url: "newAlbum.php",
            data: $(this).serialize(),
            success: function(data){
            var album = data;
                 $('#myvar').val(album);
            },
            error : function(data) {
                console.log(data);   
            }
          });   
    });
</script>

尝试以JSON形式接收数据

$.getJSON()

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

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