Javascript 如何清除此文本框?
下面的mithril代码用于在从文本框中提取值时清除文本框。它不会清除文本框(或执行任何操作)。我怎样才能让它工作 请注意,如果我更改此行:Javascript 如何清除此文本框?,javascript,mithril.js,Javascript,Mithril.js,下面的mithril代码用于在从文本框中提取值时清除文本框。它不会清除文本框(或执行任何操作)。我怎样才能让它工作 请注意,如果我更改此行: this.newItemName(""); 致: 然后用新值更新文本框。但我想澄清一下 您的代码似乎正常工作: 您可能正在使用旧版本的Mithril 以下引用的代码满足SO验证要求: var app = { controller: function () { this.newItemName = m.prop("");
this.newItemName("");
致:
然后用新值更新文本框。但我想澄清一下
您的代码似乎正常工作: 您可能正在使用旧版本的Mithril 以下引用的代码满足SO验证要求:
var app = {
controller: function () {
this.newItemName = m.prop("");
this.makeNewItem = function (name) {
if (name) {
this.newItemName("");
}
};
},
view: function (ctrl) {
return m("div", [m("span", "new item"),
m("input", {
type: "text",
onchange: m.withAttr("value", ctrl.makeNewItem.bind(ctrl)),
value: ctrl.newItemName()
})]);
}
};
m.module(document.body, app);
它对我有效:好的,添加这个答案,我会接受。this.makeNewItem=function(name){…}。bind(this)可能更干净一些。然后在其他地方使用m.withAttr(“value”,ctrl.makeNewItem)。
var app = {
controller: function() {
this.newItemName = m.prop("");
this.makeNewItem = function(name) {
if (name) {
this.newItemName("");
}
}
},
view: function(ctrl) {
return m("div", [ m("span", "new item"),
m("input",
{ type: "text",
onchange: m.withAttr("value", ctrl.makeNewItem.bind(ctrl)),
value: ctrl.newItemName() })]);
}
};
m.module(document.body, app);
var app = {
controller: function () {
this.newItemName = m.prop("");
this.makeNewItem = function (name) {
if (name) {
this.newItemName("");
}
};
},
view: function (ctrl) {
return m("div", [m("span", "new item"),
m("input", {
type: "text",
onchange: m.withAttr("value", ctrl.makeNewItem.bind(ctrl)),
value: ctrl.newItemName()
})]);
}
};
m.module(document.body, app);