如何从输入字段中获取值并将其分配给视图模型中的JavaScript对象
How to take value from input field and assign it to a JavaScript object in your view model?
我需要创建一个带有knocket js的简单评论框(就像facebook评论一样)。我是KO的新手,我试着搜索,但似乎找不到那个愚蠢问题的答案。我会花更多的时间,但我需要尽快完成作业。这就是我的HTML:
<div id="comment-input-container">
<input type="text" placeholder="comment..." data-bind="value: commentText">
<button type="submit" data-bind="click: addComment">Add comment</button>
</div> <!-- From this input I need to take the commentText and use it in the addComment function -->
<hr>
<!-- Knockout Template for showing comments -->
<div id="comment-box" data-bind="foreach: comments">
<p data-bind="text: fullName"></p>
<p data-bind="text: datePosted"></p>
<div class="commentBody">
<div class="commentContent">
<div class="commentText" data-bind="text: commentText"></div>
<div class="commentButtonsBox"></div>
</div>
</div>
</div>
这是JS:
function CommentsViewModel() {
var self = this;
self.comments = ko.observableArray([{
fullName: "Todor Atanasov",
datePosted: new Date(),
commentText: "Awesome vid guys ty."}
]);
self.addComment = function() {
self.comments.push({
fullName: "new guy",
datePosted: new Date(),
commentText: "new comment"
})
}
}
ko.applyBindings(new CommentsViewModel());
那么我应该在commentText:"new comment"
试试这个:
function CommentsViewModel() {
var self = this;
self.newComment = ko.observable(); //add this
self.comments = ko.observableArray([{
fullName: "Todor Atanasov",
datePosted: new Date(),
commentText: "Awesome vid guys ty."}
]);
self.addComment = function() {
self.comments.push({
fullName: "new guy",
datePosted: new Date(),
commentText: self.newComment()
})
}
}
ko.applyBindings(new CommentsViewModel());
替换此html行:
<input type="text" placeholder="comment..." data-bind="value: newComment " />
相关文章:
- 如何将HTML id分配给元素,以及如何将JavaScript应用于元素
- 在循环中分配json值时,值被覆盖
- 动态分配GA增强型电子商务跟踪器
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- 如何使用javascript从主svg对象动态创建svg视图框
- 正在使用$location.path(.)路由ng视图
- angular.js没有'无法在PhoneGap中处理视图标记
- 如何包含特定于每个视图angularjs的javascript文件
- 通过在Dojo mobile ViewController.openExternalView中动态更改打开同一外部视图的
- Kendo:我该如何在树视图中创建一个递归的hieiarchy
- 如何使用Handlebars在父视图中动态分配部分视图
- 将视图中的JavaScript变量值分配给控制器变量
- 如何从输入字段中获取值并将其分配给视图模型中的JavaScript对象
- 将主干视图重新分配给新创建的DOM元素
- 如何分配返回数据对象,以便它可以在视图中呈现(node.js)
- 在实例化视图后将主干模型分配给视图
- 如何在Razor视图中分配JavaScript变量值给服务器端变量
- 如何分配一个骨干按钮不属于一个视图,一个动作
- 动态地为视图分配控制器
- BackboneJS:如何在单个视图中分配多个模型