设置javascript对象的属性值

用户名

我无法为包含一些的javascript对象设置新值ko.observables我得到这样的价值:

     var args= {"argBO":{"StateId":0,"StateName":"beijing","ShortName":"bij","IsActive":true,"CountryId":28,"errors":[],"CountryName":"China"}}

我正在尝试分配一个新的StateName,如下所示:

 1. ko.utils.parseJson(args).argBO[StateName] = 'Assasw';
 2. ko.utils.parseJson(args).argBO.StateName = 'Assasw'; 
 3. ko.utils.parseJson(args).argBO.StateName('Assasw');

它不起作用!您能告诉我问题出在哪里吗,我该如何解决?

更新:

  var stateModel = {
            StateId: ko.observable(0),
            StateName: ko.observable('').extend({ required: true }),
            ShortName: ko.observable('').extend({ required: true }),
            IsActive: ko.observable(true),
            CountryId: ko.observable().extend({ required: true })

        }

  var args = JSON.stringify({ argBO: jQuery.parseJSON(ko.toJSON(stateModel)) });
肯廷克

主要的问题是,每次将新值分配给已解析的对象都无法保存该值!你需要:

  • 解析您的对象
  • 改变价值
  • 保存当前对象状态(或覆盖现有对象)

您可以在解析之后使用JavaScript中许多可能的表示法之一来访问和更改对象的值

object["propertyName"] = value

此代码将属性值更改为New York

var argbo = ko.utils.parseJson(args).argBO;
argbo["StateName"] = "New York";
alert(argbo["StateName"]);  

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章