0
我希望我的文本框在用户保存数据时清除缓存。我希望页面中的对话框清除(重置)所有数据,而无需刷新页面。清除文本框,无需刷新页面
我已经尝试把这个代码在JavaScript
_self.someValueHere("");
,也试图把这个代码在HTML中。
onfocus="if(this.value=='A new value') this.value='';
仍然不起作用。
下面是一段我的html代码:
<p>
<label data-bind="text: key"></label><br/>
<input type="text" data-bind="value: newInfo, valueUpdate:'afterkeydown'" style="width: 196px" />
<button data-bind="click: addInfo" >Add</button>
<br/>
<select size=5 style="width:200px"
data-bind="options: infos, value: selectedInfo">
</select>
<button data-bind="click: removeInfo">Remove selected</button>
</p>
这里是我的javascript
_self.newInfo = ko.observable("");
_self.selectedInfo = ko.observable();
_self.infos = ko.observableArray();
_self.addInfo = function() {
if(_self.newInfo() != "") {
var validateInput = inputChecker(_self.newInfo(), _self.nfield);
if(validateInput == "") {
var is_unique = true;
$.each(_self.infos(), function(key, val) {
if(val == _self.newInfo()) {
is_unique = false;
_self.newInfo("");
console.log("first");
}
});
if(is_unique) {
_self.infos.push(_self.newInfo());
_self.newInfo("");
console.log("second");
} else {
alert("Duplicate entry");
}
} else {
alert(validateInput);
}
} else {
alert("Nothing to add");
}
return false;
_self.newInfo("");
};
_self.removeInfo = function() {
_self.infos.remove(_self.selectedInfo());
};
}
感谢上百万的解决方案。我发现我应该先执行代码清除文本框,然后在该页面打开对话框。大拇指为好答案! – lizzie288 2014-11-07 03:52:24