Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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
如何循环通过jQuery AJAX请求返回的分隔字符串_Ajax_Jquery - Fatal编程技术网

如何循环通过jQuery AJAX请求返回的分隔字符串

如何循环通过jQuery AJAX请求返回的分隔字符串,ajax,jquery,Ajax,Jquery,因此,下面的jQuery将向PHP脚本发布一些值并返回逗号分隔的字符串: $.ajax({ type: "POST", url: "_js/changetags.php", dataType:'json', success: function(data){ arr = data.tagsinserted.split(','); $.each(arr, function(n, val){ // toggle

因此,下面的jQuery将向PHP脚本发布一些值并返回逗号分隔的字符串:

$.ajax({
    type: "POST",
    url: "_js/changetags.php",
    dataType:'json',
    success: function(data){

        arr = data.tagsinserted.split(',');

        $.each(arr, function(n, val){
            // toggle here
        });
    }
});
我尝试将以下代码放入循环中,以便使用分隔字符串的值打开/关闭类:

$("#id_"+delimitedvalue).toggleClass("off on");
element.toggleClass("off on");
结果是,如果AJAX请求成功,页面上的一整批元素将一起切换开/关

但我无法让代码正常工作。我不知道如何将返回的分隔值分配给toggle函数。我还怀疑有更好的方法可以做到这一点,我希望听到任何想法

您是否尝试过以下方法:

$.each(arr, function(n, val) {
    $('#id_'+val).toggleClass('off on');
});

我想你正在寻找这样的东西:

$.ajax({
    type: "POST",
    url: "_js/changetags.php",
    dataType:'json',
    success: function(data){
        var arr = data.tagsinserted.split(',');

        for(var i = 0; i<arr.length; i++){
            //Bad idea to use .each(), much slower in this case
            $("#id_"+arr[i]).toggleClass("off on");
            element.toggleClass("off on");
        }
    }
});
$.ajax({
类型:“POST”,
url:“_js/changetags.php”,
数据类型:'json',
成功:功能(数据){
var arr=data.tagsinserted.split(',');

for(var i=0;使用
非常糟糕。在这种情况下,每个
都比使用
for
循环慢得多…changetags.php使用HTML输出的纯分隔字符串进行响应-例如3,5,6,7,9,12很抱歉问这样一个基本的问题,但是如何检查php返回的内容(只是为了消除这一问题)。是否有办法在屏幕上打印字符串。是-
success:function(data){alert(data)}