Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML以$.ajax格式返回的问题_Javascript_Jquery_Html_Jquery Ui_Dialog - Fatal编程技术网

Javascript HTML以$.ajax格式返回的问题

Javascript HTML以$.ajax格式返回的问题,javascript,jquery,html,jquery-ui,dialog,Javascript,Jquery,Html,Jquery Ui,Dialog,嘿,伙计们,我有以下代码: $(document).ready(function () { $(".atf-submit").click(function () { atf_name = $(this).parent().parent().find(".user_table"); atf_amount = $(this).parent().parent().find(".user_atf"); runATFins

嘿,伙计们,我有以下代码:

 $(document).ready(function () {        
    $(".atf-submit").click(function () {
            atf_name = $(this).parent().parent().find(".user_table");
            atf_amount = $(this).parent().parent().find(".user_atf");
     runATFinsider();
    });
});
function runATFinsider(){
        var urlatfinsider = '/pcg/ATF/updateATF_window.php';
        var tagatfinsider = $("#insider_dialog");

        var promise1a = showUrlInDialogATFinsider(urlatfinsider);
        var promise2a = sendUpdateATFwindow();

        $.when(promise1a, promise2a).done(function(data1, data2) {

            tagatfinsider.html(data1[0]).dialog({
              width: '100%',
              modal: true
            }).dialog('open');
           //$('.updaterATF_outerbody').text(data2[0].atfName),
           //$('.updaterATF_outerbody').text(data2[0].atfAmount)
           //alert(data2[0].atfname);
           console.log(data2);
        });
    }
    function showUrlInDialogATFinsider(urlatfinsider)
    {
      return $.ajax({
        url: urlatfinsider
      });
    }
    function sendUpdateATFwindow()
{
  return $.ajax({
    data: {
        'atfName': atf_name.val(),
        'atfAmount': atf_amount.val()
    }
  });
}
查看顶部,假设在执行
控制台时,
atf\u name
atf\u amount
的值是
'joe and 0'
。log
alert(data2[0].atfName)
它不存在吗?它没有定义,当我执行console.log(data2)时,值应该位于表的HTML的邻接处,所有值都来自于此。我不知道为什么会发生这种情况,这毫无意义,因为当我发出
警报(aft_name.val())
时,我会得到正确的值

如果你能帮我一把,我将不胜感激。当一个对话框窗口已经打开并且打开了另一个窗口时,此代码也会运行。我认为这不应该是个问题

大卫

以下是HTML:

<input type='hidden' class='user_table' value='$memusername'/>
<input type='hidden' class='user_atf' value='$memATF'/>


这些都在一个表中。

不确定,但我已经完成了jQuery AJAX返回值,如下所示:

    $.ajax({
        type: "POST", 
        url: url, 
        data: 'string'
    }).done(function(returnVar) {
        /* Do something with returnVar*/
    });
老实说,我不知道这是否有帮助,但这是我个人使用的

编辑:

还必须发送AJAX文件中的返回。我主要处理PHP文件,所以我只是这样做


ECHO$myVariable

嘿,伙计们,我知道了。我实际上需要创建一个单独的文件来返回发送的值,所以我创建了以下内容:

$name_ATF = trim( $_POST['atfName'] );
$amount_ATF = trim( $_POST['atfAmount'] );


$returnArray = array( 'atfName' => $name_ATF, 'atfAmount' => $amount_ATF);

echo json_encode($returnArray);
工作得很好。谢谢你们的辛勤工作


David将此作为一个答案,因为我指出您不需要通过ajax调用来获取解决方案注释中的
atf\u name
atf\u amount
的值。为了尽量减少对代码的更改,我的建议是将
sendUpdateAfWindow()
更改为:

function sendUpdateATFwindow() { 
    return {'atfName': atf_name.val(), 'atfAmount': atf_amount.val()}; 
} 

你在哪里做警报(数据[0].atfName)
?我会做警报(数据2[0].atfName在.$when中)如果你能把你的js和html放在@DavidBiga上,调试会容易得多。它是未定义的,因为你的ajax请求没有返回它。@KevinB我怎么解决这个问题?是的,我需要使用$。对于这个问题,所以我必须把它还给你。明白了,奥威尔:-)我没有别的事要做,所以我会四处挖掘,做些研究,看看我是否找到了什么。如果没有其他帮助的话,它也可以帮助我学习。为什么要发送一个额外的请求来返回可以直接从页面中提取的值?除非您将值存储在服务器上或某个数据库中,否则此请求是不必要的。我不知道如何用@derekaug的另一种方法来执行此操作。您可以向我演示一下吗?您应该能够将
sendUpdateAfWindow()
函数更改为此<代码>函数sendUpdateAfWindow(){return{'atfName':atf_name.val(),'atfAmount':atf_amount.val()};}。这样,您就不会发送请求来吐回您发送给它的值。@derekuag它成功了……您想把awnser放进去,我会给您分数!:)