Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

jQuery Json iteration


Öne çıkan mesajlar

Mesaj tarihi:
Ajax ile aldigim arrayin degerlerini HTML dropdowna eklemeye calisiyorum fakat String ekleyecegine object olarak ekliyor.
Serverdan gelen data su sekilde:

[{"value":"2012","key":"3"},{"value":"2011","key":4}]

jQuery su sekilde:

function fillOptions(ddId, callingElement) {
var dd = $('#' + ddId);
$.getJSON('json/populateversions?dd=' + ddId + '&applicationid=' + $(callingElement).val(), function(opts) {
$('>option', dd).remove(); // Clean old options first.
if (opts) {
$.each(opts, function(key, value) {
//alert(key + ' ' + value)
dd.append($('<option/>').val(key).text(value));
});
} else {
dd.append($('<option/>').text("Please select parent"));
}
});
}

Soyle gorunuyor:
https://dl.dropboxusercontent.com/u/23906642/json.jpg
Sorun nedir?
Mesaj tarihi:
Cunku sana gelen data'da bir array icinde iki ayri obje var. Haliyle array'i loop'layinca icindeki aldigin value'ler birer obje olarak kaliyor.

Bunlari debug etmek icin console.log'dan sahanesi yok bu arada. Bol bol kullanmali.
  • 4 ay sonra ...
Mesaj tarihi:
Merhabalar,

Basit bir soru soracagım

elimde soyle bir JSON var;

{items : [{....

"user" :{
"username":"Giu_Destino",
"lang":"it",
"creationDate":"2012-01-23T10:58:21+00:00",
"followersCount......
............}

items'in icinde birden cok eleman var '{...}' su sekilde.
Burada "username" inmek icin

if (key == "items") {
for (j, len = itemsData.length; j < len; j++) {
if (j > 0) {
geoJSONtext += ,;
}
$.each(itemsData[j], function(key, val) {
if(key == "user")
{

$.each(data,function(key1,itemsData1)
{
if(key1 == "username")
{
geoJSONtext +=JSON.stringify(itemsData1);
}
});

Soyle bir sey sacmalarsam olmuyorda. Cozum nedir
Mesaj tarihi:
Yapılmak isteneni pek anlamadım da, anladığım kadarıyla yazayım.

items'ı içeren verinin adının data olduğunu farzediyorum


var parts = [];
for(var i = 0, l = data.items.length; i < l; i++) {
var x = data.items[ i];
parts.push(x.username);
}
parts.join(", ");
Mesaj tarihi:
Giu_Destino,Giu_Destino 2,Giu_Destino 3 gibi usernameleri yan yana almak istiyorsan gibi anladim, jquerye ihtiyacin olmamali


t.items.reduce(function(acc,item){
return acc+=item.user.username+",";
},"").slice(0,-1)


arrayinin icinde item attr'i olan bir obje var, ondan sonra zinciri izliyor attributeler.
jsonu direk obje olarak alabiliyorsun zaten, attrname vsler icin checke gerek yok
Mesaj tarihi:
Fly said:

Giu_Destino,Giu_Destino 2,Giu_Destino 3 gibi usernameleri yan yana almak istiyorsan gibi anladim, jquerye ihtiyacin olmamali


t.items.reduce(function(acc,item){
return acc+=item.user.username+",";
},"").slice(0,-1)


arrayinin icinde item attr'i olan bir obje var, ondan sonra zinciri izliyor attributeler.
jsonu direk obje olarak alabiliyorsun zaten, attrname vsler icin checke gerek yok


Bak bu süper oldu, hic aklıma gelmemisti.

GeoJSON veri ile oynuyorum ne Mongo JDBC isini yapabiliyorum ne OpenLayers'in fonksiyonlarını becerebiliyorum.

Sürekli basic programlama ile verileri isliyorum alıyorum vs, kafam allak bullak oldu
  • 1 ay sonra ...
Mesaj tarihi:
hello world programını çalıştıramadım resmen :)


var na = prompt("Fahrenheit to celcius converter", "Type Fahrenheit value");

if (!isNaN(na))
document.write("It is " + ((na-32)/1.8) + "in celcius")
else{document.write("Please enter a number");



promp ekranı gelmiyor browserde , type checki yapamadım herhalde. if e true başka herhangi bir şey verince oluyor ama
Mesaj tarihi:
Prompt gelmiyorsa gerisi onemsiz zaten cunku evaluate edecek bir "na" olmayacak ortada. Chrome'da sag tikla sayfaya, buraya mesela, inspect de, acilan panel'de console tab'ine gecip kodunu oraya yapistirarak dene. Ya da console acikken sayfayi yenileyerek dene. Bir hata varsa gorursun orda.

Bir de document.write yerine alert ya da console.log kullanmayi tercih edebilirsin. Daha rahat, daha debuggable olur.
Mesaj tarihi:
Kodu direk kopyaladıysan syntax hatası var sanırım else'den önce. Gerçi Javascript çok aramıyo noktalı virgülü ama yine de düzeltmek lazım. Yoksa type checki falan geçtim en azından prompt'un gelmesi lazımdı.
Mesaj tarihi:
şöyle


var name = prompt("Fahrenheit to celcius converter", "Type Fahrenheit value");

if (!isNaN(name))
document.write("It is " + ((name-32)/1.8) + "in celcius")
else{document.write("Please enter a number")};



yapınca oldu :) teşekkürler ikinize de. type checki önce type of ile yapmaya çalışıp becerememiştim.

di sabit konuda söylediğin kitaba baktım , güzelmiş hakikaten. ama biraz eski galiba.
×
×
  • Yeni Oluştur...