2

我正在使用此 JavaScript 代码来计算页面数组中的警报计数。

urls 是一个页面名称数组,count 是计数值。

我想提醒数组 url 的每一页中的计数值。

但是 for 循环并非一直在执行。我不知道会发生什么...任何人请帮我找出错误..

echo $_POST['suggest'];在页面数组中使用。但我想使用 JavaScript 代码来接收建议的值并提醒它。如何使用 JavaScript 接收价值?

<script>
        $(document).ready(function () {
            var count = document.getElementById('display_visitor_number').innerHTML; //count
            var urls = document.getElementById('display_visitor_urls').innerHTML; //array of page names
            var myarr = urls.split(",");

            for (var i=1;i<myarr.length;i++)
            { 
                $.post(myarr[i],{suggest:count}, function(data) {
                    alert(data);
                });
            }


        });
    </script>
4

2 回答 2

0

如果字符串 urls 以 开头,在拆分之前它将有一个空字符串作为第一个值(这将导致 jquery 对当前页面进行 ajax 调用),您可能需要检查它并以 0 开头

<script>
        $(document).ready(function () {
            var count = document.getElementById('display_visitor_number').innerHTML; //count
            var urls = document.getElementById('display_visitor_urls').innerHTML; //array of page names
            var myarr = urls.split(",");

            for (var i=0;i<myarr.length;i++)
            { 
                if(myarr[i] !== '')$.post(myarr[i],{suggest:count}, function(data) {
                    alert(data);
                });
            }


        });
    </script>
于 2013-02-27T07:16:19.060 回答
0

而不是使用split函数,你最好尝试正则表达式并匹配所有非空格字符序列。代替

var myarr = urls.split(",");

var myarr = urls.match(/[^ ,]+/g)

然后你应该开始for循环var i=0

于 2013-12-05T21:41:55.917 回答