A ja ti znovu rikam, ze musis na stranky toho programu, ktery ma tu funkci FindRow. Tam bude v dokumentaci jiste informace See Also nebo priklady jineho pouziti. A mela by tam byt funkce, kterou chces. A kdyz ne, tak nektery parametr te puvodni funkce to udela. a kdyz ne, mela by mit aspon parametr, od jakeho radku to chces hledat. Pak by se to dalo dat do cyklu.
Ja tam na tu stranku googlovat nepujdu, nepotrebuji. Proc? Ten muj program funguje. A ty se furt zabyvas nejakou cizi funkci... Pripadne si kod muzes upravit. Ale nejdriv si to proste zkus, zda to dela, co to ma.
var r = ultraGrid.FindRow(2, "1");
var r = find(ultraGrid,[[2, ["1"]]); // to by mohlo delat, to, co potrebujes
Příspěvky odeslané z IP adresy 2001:718:2601:26c:e4ae:7d...–
peter
peter
Ja ti nerad kazim radost, ale javascript nema funkci FindRow. Takze pohledej na strankach tvurcu programu, ktery pouzivas.
Kdybych to resil v js, tak nejak takto
<div id=sss></div>
<script>
tab = [
[1, 2, 3],
[4, 2, 5],
[1, 6, 7]
];
phrase1 = [
[0, [1]],
[1, [2]]
];
phrase2 = [
[0, [1]]
];
phrase3 = [
[1, [2]]
];
function find(tab, phrases)
{
var i, j, k, out, bool1, bool2, row, col, phrase, words, word;
out = [];
for (i=0; i<tab.length; i++)
{
row = tab[i];
bool1 = true;
for (j=0; j<phrases.length; j++)
{
phrase = phrases[j];
col = row[phrase[0]] || null;
words = phrase[1];
bool2 = false;
for (k=0; k<words.length; k++)
{
word = words[k];
bool2 |= col == word;
}
bool1 &= bool2;
}
if (bool1==true)
{
out[out.length] = tab[i];
}
}
return out;
}
obj = document.getElementById('sss');
obj.innerHTML += find(tab,phrase1).toSource()+'<br>';
obj.innerHTML += find(tab,phrase2).toSource()+'<br>';
obj.innerHTML += find(tab,phrase3).toSource()+'<br>';
</script>