javascript - KnockoutJS,文本与值绑定(bind)。为什么文本绑定(bind)不绑定(bind)到输入字段?

标签 javascript asp.net-mvc knockout.js

来自 knockout 教程:

为什么会这样?

 <p>First name: <input data-bind="value: firstName" /></p>

虽然这不是?

 <p>First name: <input data-bind="text: firstName" /></p>

View 模型

// This is a simple *viewmodel* - JavaScript that defines the data and behavior of your UI
 function AppViewModel() {
this.firstName = "Bert";
this.lastName = "Bertington";
}

最佳答案

因为在 html 中,'input type="text"' 中键入的文本存储在名为 value 的属性中。

值绑定(bind)影响元素的值属性,文本绑定(bind)改变元素的内部文本。

通过写作

<input data-bind="text: firstName" />

您正在尝试更改输入元素的内容。并且输入不允许内容。

<input value="where the value binding writes its data">
    where the text binding writes its data
</input>

关于javascript - KnockoutJS,文本与值绑定(bind)。为什么文本绑定(bind)不绑定(bind)到输入字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19451855/

相关文章:

java - 如何使用 Java ScriptEngine 创建 Javascript 函数

javascript - 如何从 JSON 中重新选择值

asp.net-mvc - 将 OwinADAuthentication 从 .NET Framework 转换为 .NET Core

asp.net-mvc - 禁用并指定 Html.DropDownList 的默认选择

knockout.js - 如何以固定次数呈现内联模板

javascript - 使用箭头键和 jQuery 移动项目

javascript - jQuery.when - 当 ALL Deferreds 不再是 'unresolved'(解决或拒绝)时的回调?

javascript - knockoutjs通过点击事件获取(真正绑定(bind)的)元素

asp.net-mvc - ApiController 和 Controller 继承自同一个基类

asp.net-mvc - 具有多对多关系的 EF5 在序列化为 JSON 时创建循环引用