|
|
|
| С ajax приходит поток данных в переменную message в формате 0^0^0^1^0 и т.д., т.е. в любом порядке нули и еденицы, но за место нулей может быть чтото типа 3-town-4@0
принимаю данные
....
if (xmlHttp.status == 200)
{
message = xmlHttp.responseText;
...
|
делаю массив
var temp = new Array();
temp = message.split(\"^\");
|
объявляю массивы и используемые переменные
var tw1 = new Array();
var tw2 = new Array();
var texxt=\"\";
var h;
var w;
var ccc1;
var ccc2;
var dfg = 1;
|
дальше пытаюсь принятые данные вывести таблицей картинок, для этого формирую переменную texxt в двух циклах
texxt+=\"<table border=0 cellpadding=0 cellspacing=0>\";
for (h=1;h<=9;h++)
{
texxt+=\"<tr><td width=11 height=60 background=imgs/sd1.jpg></td>\";
for(w=1;w<=13;w++)
{
|
тут проверяю в каком формате данный элемент, если просто число, то ничего не делаю, если набор чисел и букв разделенных знаком @ то беру нулевой элемент и работаю с ним дальше разделяя опять на массив, если набор чисел и букв отделенных знаком - то разделяю его на массив и дальше работаю уже с его элементами
tw1 = temp[dfg].split(\"@\");
ccc1 = count(tw1);
if (ccc1 > 1)
{
tw2 = tw1[0].split(\"-\");
}
else
{
tw2 = temp[dfg].split(\"-\");
ccc2 = count(tw2);
if (ccc2>1)
{
if ((tw2[0]==\"0\") && (tw2[1]==\"town\"))
{
temp[dfg]=\"10\";
}
}
}
|
если данный элемент просто число то никакие пробразования выше на него не действовали, вывожу переменную texxt как одну из ячеекв которой temp[dfg] равна 0 или 1, если выше преобразования действовали то temp[dfg] равна 10
texxt+=\"<td id=\"+h+\"y\"+w+\" height=60 width=60 background='imgs/\"+temp[dfg]+\"-1.jpg' onMouseOver=document.getElementById('\"+h+\"y\"+w+\"').background='imgs/\"+temp[dfg]+\"-2.jpg'; onMouseOut=document.getElementById('\"+h+\"y\"+w+\"').background='imgs/\"+temp[dfg]+\"-1.jpg';></td>\";
dfg+=1*1;
}
texxt+=\"<td width=11 height=60 background=imgs/sd1.jpg></td></tr>\";
}
texxt+=\"</table>\";
document.getElementById(\"divMessage\").innerHTML=texxt;
}
|
ошибку пишет - предполагается наличие объекта и указывает на строку в которой пытаюсь посчитать кол-во элементов массива tw1 ----- ccc1 = count(tw1);
может быть я неверно применяю ф-ию count(); просто не особо силен в javascript, скажите, как исправить? | |
|
|
|
|
|
|
|
для: Blizard
(15.02.2009 в 01:43)
| | Метода count в Javascript'e нет вообще. Таковой имеется в VBS (и в WSH), но не в Javascript'e.
И он вам здесь и не нужен.
Массив tw2 у вас получается обычный (с числовыми индексами), поэтому замените
ccc2 = count(tw2);
на
ccc2 = tw2.length;
|
| |
|
|
|