v2.5.2
Giriş yap

Inputtan veriyi json ile alma

ac
662 defa görüntülendi

Merhaba,

inputtan gelen veriyi json ile js dosyama almak istiyorum. Bunu aşağıdaki şekilde denedim ancak olmuyor. Burada yaptığım yanlış nedir? Ya da nasıl bir yol izlemem lazım?

<input type="hidden" class="" name="demo" value="{'name':'John', 'birth':'1986-12-14', 'city':'New York'}">
<p id="demo"></p>
var ad = document.getElementsByName("demo");
var text = ad[0].defaultValue;
console.log(text);
var obj = JSON.parse(text);
obj.birth = new Date(obj.birth);
document.getElementById("demo").innerHTML = obj.name + ", " + obj.birth; 

Teşekkürler..

Cevap yaz
Cevaplar (1)
isimimcokguzel2
1424 gün önce

Hocam ilk olarak:

var arr = [];

ile array oluşturup daha sonra formdaki tüm inputları forEachle alarak valuesini alarak arrayin input name ine atayabilirsiniz anlamamış olabileceğiniz için bir örnekle göstereceğim.


// "form>input" yerini değiştirebilirsiniz örnek ".denemeclass" şeklinde girebilirsiniz ancak 
// id olarak girdiğinizde ("#denemeid") geçersiz olacaktır.
document.querySelectorAll("form>input").forEach(input => {
    arr[input.name] = input.value;
});

Sonra Onu Ekrana veya Konsola yazdırabilirsiniz.

console.log(arr);

Ben bunu xhr ile nodejs e veri gönderirken kullanıyordum çünkü bodyParser json olarak almıyordu bende böyle bi algoritma kurup veriyi json olarak gönderdim.