繁体   English   中英

如何从一个Ajax函数获取变量以在另一个Ajax函数中工作

[英]How to get variable from one Ajax function to work in another Ajax function

我试图使用一个变量,该变量是通过在另一个ajax函数的一个ajax函数中从php发送的数据创建的。 我不确定自己在做什么错。 我尝试通过执行var nameOutput创建为全局变量,还尝试了var nameOutput = 0 您将在第二个ajax函数中看到警报代码。 这什么也不输出。 如果删除.val().val()收到对象Object。

有问题的代码在第二个Ajax函数中: data: { 'nameOutput': nameOutput.val() }

有谁知道我该怎么办?

var nameOutput;

$('#shuffle').on('click', function() {
    $.ajax({
        url: 'php/name-selection.php',
        type: 'POST',
        success: function(data) {
            nameOutput = $('#name-output').html(data);
            $(nameOutput).html();
        },
        complete:function(){
            $('#send-info').slideDown(1500);
        },
        error: function(xhr, textStatus, errorThrown) {
            alert(textStatus + '|' + errorThrown);
        }
    });
});
//var datastring1 = $('#name-output').serialize();
$('.check').click(function() {
    alert(nameOutput.val());
    $.ajax({
        url: 'php/name-selection-send.php',
        type: 'POST',
        data: {
            'nameOutput': nameOutput.val()
        }
        ,
        success: function(data) {
            if (data == 'Error!') {
                alert('Unable to  submit inquiry!');
                alert(data);
            } else {
                $('#success-sent').html(data);
            }
        },
        complete:function(){

        },
        error: function(xhr, textStatus, errorThrown) {
            alert(textStatus + '|' + errorThrown);
        }
    });

如果可以使用.html('blah')设置nameOutput的内部html,那么可以使用nameOutput.html()而不是nameOutput.val()再次提取html;

但是我认为您必须将这样的元素定义为HTML元素:

var nameOutput=$('<div></div>');

同样在第一个ajax函数中,使用以下命令设置html:

nameOutput.html(data);

如果存在一个具有ID name-output的真实元素,并且您希望结果可见,请执行以下两项操作:

nameOutput.html(data);
$('#name-output').html(data);

暂无
暂无

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

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