- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下使用 JQuery 和 Knockout 的 JavaScript(我有将两者一起使用的具体原因)
$(document).ready(
function () {
var Crime = function (Id, CaseNumber, DateOfIncident, Description) {
var self = this;
self.Id = Id;
self.CaseNumber = CaseNumber;
self.DateOfIncident = DateOfIncident;
self.Description = Description;
}
var CrimesViewModel = function () {
var self = this;
//Data
self.items = ko.observableArray()
//operations
addCrime = function () {
if ($("#AddCrimeForm").valid()) {
crime = new Crime(0,
$("#AddCrimeForm #CaseNumber").val(),
$("#AddCrimeForm #DateOfIncident").val(),
$("#AddCrimeForm #Description").val());
self.items.push(this.crime);
$("#AddCrimeForm #CaseNumber").val("");
$("#AddCrimeForm #DateOfIncident").val("");
$("#AddCrimeForm #Description").val("");
}
}
self.removeCrime = function (item) {
self.items.remove(item);
}
loadCrimes = function (JSONstring) {
try {
self.JSONItems = JSON.parse(JSONstring);
if (self.JSONItems != null)
if (self.JSONItems != null)
for (i = 0; i < self.JSONItems.length; i++)
self.items.push(self.JSONItems[i]);
}
catch (e) {
alert(e.message + "\n\n" + e.description + "\n\n" + e.stack)
}
}
getCrimes = function () {
var self = this;
return JSON.stringify(self.items);
}
}
var CrimesVM = new CrimesViewModel()
ko.applyBindings(CrimesVM, $("#CrimeList")[0])
}
);
如上面的代码所示,我有一个 ViewModel,它基本上由一个包含 Crime
对象的数组组成。
getCrimes()
函数的目的是在调用时将数组序列化为 JSON。
不幸的是,getCrimes()
函数返回一个空字符串,因为 JSON.stringify(self.items)
返回一个空字符串。
知道我在这里做错了什么吗?
**
**
这是基于下面给出的答案的工作代码:
$(document).ready(
function () {
var Crime = function (Id, CaseNumber, DateOfIncident, Description) {
var self = this;
self.Id = Id;
self.CaseNumber = CaseNumber;
self.DateOfIncident = DateOfIncident;
self.Description = Description;
}
var CrimesViewModel = function () {
var self = this;
//Data
self.items = ko.observableArray()
//operations
addCrime = function () {
if ($("#AddCrimeForm").valid()) {
crime = new Crime(0,
$("#AddCrimeForm #CaseNumber").val(),
$("#AddCrimeForm #DateOfIncident").val(),
$("#AddCrimeForm #Description").val());
self.items.push(this.crime);
//Update the correspoding hidden field
$("#CrimeCollection_New").val(ko.toJSON(self));
$("#AddCrimeForm #CaseNumber").val("");
$("#AddCrimeForm #DateOfIncident").val("");
$("#AddCrimeForm #Description").val("");
}
}
self.removeCrime = function (item) {
self.items.remove(item);
//Update the correspoding hidden field
$("#CrimeCollection_New").val(ko.toJSON(self));
}
loadCrimes = function (JSONstring) {
try {
self.JSONItems = JSON.parse(JSONstring);
if (self.JSONItems != null)
if (self.JSONItems != null)
for (i = 0; i < self.JSONItems.length; i++)
self.items.push(self.JSONItems[i]);
}
catch (e) {
alert(e.message + "\n\n" + e.description + "\n\n" + e.stack)
}
}
}
var CrimesVM = new CrimesViewModel()
ko.applyBindings(CrimesVM, $("#CrimeList")[0])
}
);
最佳答案
因为 self.items
是一个 Knockout 可观察对象,所以您应该使用 Knockout 函数 .toJS()
来获取值: ko.toJS(self.项目)
。
或者,如果您想将项目直接转换为 JSON,可以使用 .toJSON()
。
关于javascript - JSON.stringify(ComplexArray) 返回一个空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22043276/
我正在尝试用 Java 构建一个字符串,该字符串的长度最多为 3,最少为 1。 我正在根据整数数组的内容构建字符串,如果数组的内容为 -1,我想在字符串中输出一个空字符。否则字符串将包含整数的字符版本
我有一个类,其中有一个方法可以在字符串中包含 NUL 字符的情况下终止程序。具体表达是这样的: stringVar.indexOf('\u0000') < 0 这个字符串是通过 Scanner 从用户
我有一个 wchar_t 数组。我需要在数组中的特定位置添加一个 unicode 空字符。 wchar_t var1[100]; var1[79] = '\u0000'; 我尝试了上面的方法,但出现以
好吧,这听起来可能是重复的,但我已经尝试了所有可能性,例如 str.strip()、str.rstrip()、str.splitline (),还 if-else 检查像: if str is not
System.out.println("-----------------------------------------------------------"); System.out.pr
我有一个奇怪的问题。我从公司内部的许多不同应用程序接收数据,并将这些数据显示在网站上。根据发送数据的系统,数据本身可能在字符串中包含一些奇怪的字符。我的问题是我有一个用户可以搜索以允许其中包含此数据的
我遇到了 aSSL ,这似乎有几年历史了,想知道是否有人有其他“安全”AJAX 连接代码示例?显然,这不如使用 SSL 证书安全,但使用 null character SSL在那里进行攻击(最近针对
我有一个类似于以下内容的 pyspark 数据框: df = sql_context.createDataFrame([ Row(a=3, b=[4,5,6],c=[10,11,12], d='b
我有以下要执行的查询: MyModel.objects.annotate(current_name=Coalesce('nickname', 'name')).order_by('current_na
每当 rails 变量等于 nil(或者实际上每当我使用 rails 代码(参见第 3 个代码示例))时,我的 html 中就会得到一串空字符。 new.html.haml %h1.editable.
我是一名优秀的程序员,十分优秀!