【发布时间】:2018-10-19 15:02:33
【问题描述】:
我在asp.net的hiddenfield里有下一段文字,这个值为Json serialize
text = "[{ "Element":"E001", "City":"Madrid", "Country":"Spain"},
{ "Element":"E003", "City":"Paris", "Country":"Italy"},
{ "Element":"A001", "City":"Pekin", "Country":"China"}]
我想用这样的 JS 函数改变元素的值
function ModificarDato(jsonelemento, jsonvalor)
{
var vjson = eval($("[ id$='H_Ins").val());
var vjson2 = `$`(jQuery.parseJSON(JSON.stringify(vjson))).each(function ()
{
var vElemento = this.Element;
var vCity = this.City;
var vValor = this.Country;
if (vElemento == jsonelemento)
{
this.Country = jsonvalor;
}
});
var jsonvalorfinal = JSON.stringify(vjson2);
alert("Valor final : " + jsonvalorfinal);
$("[ id$='H_Ins").val(jsonvalorfinal);
}
问题是当我将 jsonvalorfinal 放在隐藏字段中时,文本是不同的
text = "{"0":{"Element":"E001", "City":"Madrid", "Country":"Spain"},
"1":{"Element":"E003", "City":"Paris", "Country":"France"},
"2":{"Element":"A003", "City":"Pekin", "Country":"China"},
"length":3}
我需要第一个字符串的相同格式才能继续使用另一个函数。有可能
谢谢
【问题讨论】:
-
I want change the value of element whith a JS function like this我不明白吗?你能清楚地说明你想做什么吗? -
用户按下了一系列按钮,每个按钮都执行函数 ModificarDato("E003", "France");
-
所以你想更新你的 JSON 数组?与函数的参数?