我对 KnockoutJS 很陌生,到目前为止我一直在研究它,但尽我所能,我在任何地方都找不到此信息,所以我希望社区可以提供帮助!在我的视图中,我在文件输入上有以下数据绑定:
<input type="file" data-bind="value: ImageToUpload"/>
<button data-bind="click: $root.saveImage">Upload</button>
这是“foreach”div 中列表的一部分,因此变量“ImageToUpload”对应于该列表中对象的属性。
在我的 ViewModel 中,上传按钮调用 saveImage(),我调用 Web 服务并将表单数据传递给 .aspx 页面:
self.saveImage = function (MyObject, event) {
$.post("Service.aspx", MyObject, function (returnedData) {
});
}
该对象很好地传递给我的服务,我可以按预期访问所有表单数据,包括“ImageToUpload”变量......但这是我卡住的地方:
1)“ImageToUpload”只是一个字符串,代表我上传的文件的名称,而不是一个字节数组。如何访问图像文件而不仅仅是名称?
2) 有没有更好的方法将 ByteArray 作为 Stream 或响应标头中的其他格式传递?
3)我的技术完全失效了吗?有一个更好的方法吗?我的目标是有一个上传到的图像“插槽”的动态列表。
提前致谢!