Autor Zpráva
Igor
Profil *
Mám objekt, jehož vlastnosti bych rád zpřístupnil. Názvy vlastností jsou definované v poli columns. Tedy abych nemusel přistupovat k vlastnostem jednotlivě:

$("input#"+columns[id]).text(result.result.a);
$("input#"+columns[id]).text(result.result.b);
$("input#"+columns[id]).text(result.result.c);
atd.

result.result = {
"a":"text",
"b":"text",
"c":"text"
};
result.columns = ["a", "b", "c"];

for(var id in result.columns)
{
$("input#"+columns[id]).text(result.result.(jméno_vlastnosti));
}

Igor
Profil *
Měl jsem tam chybu, ale už jsem našel i řešení. Uvedu to sem celé...

var loadFormData = function(result) { 
    for(var id in result.columns)
      {
      $(result.result).attr(result.columns[id]) ); <!-- Drsný trik jak zpřístupnit objekt pomocí proměnné! Přes JQuery! -->        
      $("input#"+result.columns[id]).val( $(result.result).attr(result.columns[id]) );
      }
  }; 


Nastaví všechny vstupní prvky ve formuláři.
Chamurappi
Profil
Reaguji na Igora:
Drsný trik jak zpřístupnit objekt pomocí proměnné! Přes JQuery!
Hm. Humus. Nebylo by lepší učit se spíš JavaScript než jQuery?

for(var id in result.columns)
Tento druh cyklu se nehodí na procházení polí, je určený spíš na procházení členů objektu. Tedy kdybys procházel for(var id in result.result), dostával bys postupně do id hodnoty "a", "b" a "c". A pak pochopitelně stačí znát ty základy, abys věděl to, na co se ptáš
Igor
Profil *
Chamurappi:
Tak dík za radu, už je to lepší?

  var loadFormData = function(result) { 
      for(var id in result.result)
        {
        $("input#"+id).val( result.result[id] );
        }
    }; 


Toto mi funguje

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0