Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.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 如何在post响应中访问js值?_Javascript_Jquery - Fatal编程技术网

Javascript 如何在post响应中访问js值?

Javascript 如何在post响应中访问js值?,javascript,jquery,Javascript,Jquery,我正在发出jquery post请求,以从服务器获取html代码的一部分。服务器get_info.php上有一个文件,用于打印不同需求的html代码。我正在使用以下代码执行此操作: function check(inf_type) { $.ajax({ type: 'POST', url: "get_info.php", data: { "sequence_no" : 1 }, success: function(data)

我正在发出jquery post请求,以从服务器获取html代码的一部分。服务器get_info.php上有一个文件,用于打印不同需求的html代码。我正在使用以下代码执行此操作:

function check(inf_type) {
    $.ajax({
        type: 'POST',
        url: "get_info.php",
        data: { "sequence_no" : 1 },
        success: function(data) {
            // how can i use value of variable "inf_type" here.
            // here, the variable "data" contains HTML code.
        },
        dataType: 'text'
    });
}
函数check()接受一个参数inf\u type,该参数包含随机字符串,服务器根据该字符串识别要打印的html代码。现在,我想根据这个inf\u类型处理POST响应。 如何在POST响应函数中访问inf\u type变量的值?函数check()的调用频率更高,这就是为什么我不能将inf\u type变量值放入任何全局变量中的原因。 我能做些什么来实现这一目标?
请引导我。提前感谢。

您可以在Success函数中使用info\u type变量。参数info\u type的范围仍存在于success函数中。

您可以在success函数中使用info\u type变量。参数信息类型的作用域仍然存在于成功函数中。

首先,您必须将信息类型发送到服务器,以便返回如下特定值:

function check(inf_type) {
 $.ajax({
    type: 'POST',
    url: "get_info.php",
    data: { "sequence_no" : 1, whatToSearch : inf_type }, // i added
    success: function(data) {
         //$(selector).html(data);//where you want to show the data
        // how can i use value of variable "inf_type" here.
        // here, the variable "data" contains HTML code.
    },
    dataType: 'text'
 });
}
function check(inf_type) {
    $.ajax({
        type: 'POST',
        url: "get_info.php",
        data: { "sequence_no" : 1 },
        success: function(data) {
            alert(inf_type); //inf_type is available here.
        },
        dataType: 'text'
    });
}

首先,您必须将inf\u type发送到服务器,以便返回如下特定值:

function check(inf_type) {
 $.ajax({
    type: 'POST',
    url: "get_info.php",
    data: { "sequence_no" : 1, whatToSearch : inf_type }, // i added
    success: function(data) {
         //$(selector).html(data);//where you want to show the data
        // how can i use value of variable "inf_type" here.
        // here, the variable "data" contains HTML code.
    },
    dataType: 'text'
 });
}

您可以在success或error函数中直接使用该变量

function check(inf_type) {
    $.ajax({
        type: 'POST',
        url: "get_info.php",
        data: { "sequence_no" : 1 },
        success: function(data) {
            alert(inf_type); //inf_type is available here.
        },
        dataType: 'text'
    });
}

您可以在success或error函数中直接使用该变量

function check(inf_type) {
    $.ajax({
        type: 'POST',
        url: "get_info.php",
        data: { "sequence_no" : 1 },
        success: function(data) {
            alert(inf_type); //inf_type is available here.
        },
        dataType: 'text'
    });
}

您可以通过
check()
函数的
inf\u type
参数访问它:

function check(inf_type) {
    $.ajax({
        type: 'POST',
        url: "get_info.php",
        data: { "sequence_no" : 1 },
        success: function(data) {
            if (inf_type == 0) {
                // do something with data
            } else {
                // do something else
            }
        },
        dataType: 'text'
   });
}

之所以这样做是因为内部函数(成功回调)可以访问外部函数(check)中的变量。有关更多详细信息,请参阅此答案:

编辑
这假设inf_类型是一个数字,或者是每次调用
check()
时对象的一个新(不同)实例。有关详细信息,请参见上述链接。

您可以通过
check()
函数的
inf\u type
参数访问它:

function check(inf_type) {
    $.ajax({
        type: 'POST',
        url: "get_info.php",
        data: { "sequence_no" : 1 },
        success: function(data) {
            if (inf_type == 0) {
                // do something with data
            } else {
                // do something else
            }
        },
        dataType: 'text'
   });
}

之所以这样做是因为内部函数(成功回调)可以访问外部函数(check)中的变量。有关更多详细信息,请参阅此答案:

编辑

这假设inf_类型是一个数字,或者是每次调用
check()
时对象的一个新(不同)实例。详细信息在上面提到的链接中进行了解释。

inf\u类型不是全局变量,check()函数在一秒钟内被调用2次,使用2个不同的inf\u类型值。在这种情况下,请求和值不应该混合。不,它不会混合。对于每个函数调用,信息类型将有自己的实例值。您可以使用。inf\u type不是全局变量,并且check()函数在一秒钟内被调用2次,使用2个不同的inf\u type值。在这种情况下,请求和值不应该混合。不,它不会混合。对于每个函数调用,信息类型将有自己的实例值。你可以使用“闭包是穷人的东西”。了解
闭包
。我是说用javascript。与您的问题无关,但为什么要发出
POST
请求以获取HTML响应?@NikhilPatil:这只是一个文件名。我需要通过该请求向服务器发送甚至不同的、更大的数据。“闭包是穷人的对象”。了解
闭包
。我是说用javascript。与您的问题无关,但为什么要发出
POST
请求以获取HTML响应?@NikhilPatil:这只是一个文件名。我需要通过该请求向服务器发送更多不同的数据。inf\u类型不是一个全局变量,check()函数在一秒钟内被调用2次,使用2个不同的inf\u类型值。在这种情况下,请求和值不应混合使用。@Forte这就是重点!由于inf_类型不是全局变量,因此对于check()函数的调用,它是局部变量。因此,成功回调将使用这个本地值,始终是正确的。请阅读我给您的链接以获得更详细的解释。inf\u类型不是一个全局变量,check()函数在一秒钟内被调用2次,使用2个不同的inf\u类型值。在这种情况下,请求和值不应混合使用。@Forte这就是重点!由于inf_类型不是全局变量,因此对于check()函数的调用,它是局部变量。因此,成功回调将使用这个本地值,始终是正确的。请阅读我给你的链接以获得更详细的解释。我很高兴我能帮上忙:)我很高兴我能帮上忙:)因为服务器正在发送HTML代码作为响应,我正在寻找另一种更简短、更完美的方法。感谢您的帮助。将inf_类型发送到服务器并再次将其取回,然后在响应数据中搜索该值,因为它是一个HTML代码修补程序。。这涉及到大量的迭代。我只是想让我的js代码简单易懂。所以每次你都会从服务器获取完整数据,然后用javascript进行排序,为什么不发送inf_type in请求并从与之相关的服务器中提取数据,并将返回的数据直接设置到相应的div或span……因为服务器正在发送HTML代码作为响应,所以我正在寻找另一种更简短、更完美的方法。感谢您的帮助。将inf_类型发送到服务器并再次将其取回,然后在响应数据中搜索该值,因为它是一个HTML代码修补程序。。这涉及到大量的迭代。我只是想让我的js代码简单易懂。所以你每次都从服务器获取完整的数据,然后用javascript进行排序,为什么不发送inf_输入请求,从服务器中提取与之相关的数据,并将返回的数据直接设置到相应的div或span。。。。。。