2016-01-14 13 views
0

我想通過使用javascript更改json文件的值。 這裏是JSON文件:使用javascript更改json文件中的值

{ 
    "login": "", 
    "password": "", 
    "ip": "", 
    "port": "", 
    "protocol": "" 
} 

,這裏是什麼我試圖改變數值:

$('#save').click(function() { 
    var login = $("#login").val(); 
    var password = $("#password").val(); 
    var ip = $("#ip").val(); 
    var port = $("#port").val(); 
    var protocol = $("#protocol").val(); 
    var jurl = "setting.json"; 

    $.getJSON(jurl, 
    { 
     format: "json" 
    }, 
    function (data) { 
     data.login = login; 
     data.password = password; 
     data.ip = ip; 
     data.port = port; 
     data.protocol = protocol; 
    }); 
}); 

我用<input type="text">定義的值改變

+5

JavaScript無法保存文件。你可以做的是將數據發送到服務器,並有一個服務/腳本爲你保存。 – Halcyon

+0

這裏真正的問題是什麼?保存文件或編輯json文件?如果你想找到一種方法來編輯json文件(屬性),你可以加載json,將它轉換成一個JavaScript對象並遍歷所有的屬性,爲每個屬性顯示某種輸入。 –

+0

事實上,我想編輯它並保存它:/ – saroten

回答

0

值 這是一個小例子

var jsonObj = [{'Id':'1','Username':'Ray','FatherName':'Thompson'}, 
        {'Id':'2','Username':'Steve','FatherName':'Johnson'}, 
        {'Id':'3','Username':'Albert','FatherName':'Einstein'}] 

for (var i=0; i<jsonObj.length; i++) 
{ 
     if (jsonObj[i].Id == 3) { 
     jsonObj[i].Username = "Thomas"; 
     break; 
     } 
} 

這裏是包裹在一個功能相同的事情:

function setUsername(id, newUsername) { 
    for (var i=0; i<jsonObj.length; i++) { 
    if (jsonObj[i].Id === id) { 
     jsonObj[i].Username = newUsername; 
     return; 
    } 
    } 
} 

// Call as 
setUsername(3, "Thomas"); 

check here the example

好運和嘗試... !!!