其他分享
首页 > 其他分享> > Cnockoutjs可观察到的数组到列表

Cnockoutjs可观察到的数组到列表

作者:互联网

我已经搜索了高点和低点,并尝试了许多不同的选项,但无法弄清楚这里出了什么问题.

我有一个基因敲除视图模型,看起来像这样:

{"Id":0,"Type":"post","Title":"adsf","AuthorId":0,"Description":"adsfadsf","ChosenCategoryValues":["7","8","9"]}

(为简洁起见,省略了一些字段)

除了ChosenCategoryValues之外,其他所有东西都可以很好地传递回控制器.那是客户端的一个observableArray,一个List< string>在服务器端.它总是返回null,用第一项中的所有值解开字符串,然后我将不得不对其进行字符串解析.

$.post(“ / serverurl”,viewmodel,function(response){做些事情},“ json”);它是如何发送到服务器的.

我尝试了ko.toJS使其成为一个简单的数组,没有结果.

我敢肯定这是基本的东西,我是敲入js的新手,但是我从事此工作已经太久了,我在网上找到的任何建议都没有帮助.

解决方法:

为了发送视图模型数据,您应该将视图模型数据放入JSON(请记住-观察对象是简单的函数),这可以通过调用ko.toJSON()函数来实现.

另外,您还需要告诉服务器您正在发送JSON数据.您无法使用jQuery post()方法来实现它-dataType参数仅影响预期的服务器响应类型,但不影响请求内容类型.因此,只需使用jQuery ajax()方法:

$.ajax({
    url: '/serverurl',
    type: 'POST',
    data: ko.toJSON(viewmodel),
    contentType: 'application/json',
    success: function(response) {
        // do some stuff
    }
});

标签:asp-net-mvc-4,knockout-js,c
来源: https://codeday.me/bug/20191123/2066115.html