Javascript 如何清除或重置输入?

Javascript 如何清除或重置输入?,javascript,html,dom,knockout.js,Javascript,Html,Dom,Knockout.js,我正在尝试使用knockoutJS清除和重置输入并选择字段。下面是一个关于它是如何工作的片段,但为了简洁起见进行了编辑 Javascript代码 view = (function() { var self = this; self.anItem = ko.observable(new AnItem()); ko.applyBindings(self) self.addItem = function() { self.somewh

我正在尝试使用knockoutJS清除和重置输入并选择字段。下面是一个关于它是如何工作的片段,但为了简洁起见进行了编辑

Javascript代码

view = (function()
{
     var self = this;
     self.anItem = ko.observable(new AnItem());
     ko.applyBindings(self)

     self.addItem = function()
     {
        self.somewhere.push(this);
        self.anItem = new AnItem(); /////this doesn't clear the form
     }
})();

function AnItem()
{
   this.Name= "";
   this.Type= 1
}
Html代码

<tfoot data-bind="with: anItem">
    <tr>
        <td><input type="text" data-bind="value= Name" /></td>
        <td><select data-bind="options: pretendThisIsPopulated, optionsValue:'Value', optionsText:'Text', value:Type" /></td>
        <td><a href="#" data-bind="click: addItem">add</a></td>
    </tr>

</tfoot>

您可以像这样清除这些

已编辑

view = (function()
{
     var self = this;

     var AnItem = function (name,type)
     {
        var $this = this;
        this.Name = ko.observable(name | "");
        this.Type = ko.observable(type | 1);
     };

     self.anItem = ko.observable(new AnItem("Name",1));
     ko.applyBindings(self)

     self.addItem = function()
     {
        self.somewhere.push(this);
        self.anItem = new AnItem("",1); 
     };

})();

使用
self.addItem()
以清除所需的数据。

能否将jQuery添加到项目中?使用jQuery将是一个快照。请在回答中添加解释将项目设置为参数,而不是像属性一样设置是设置观察值的正确方法。您可以编辑答案,以便解释与答案一致
view = (function()
{
     var self = this;

     var AnItem = function (name,type)
     {
        var $this = this;
        this.Name = ko.observable(name | "");
        this.Type = ko.observable(type | 1);
     };

     self.anItem = ko.observable(new AnItem("Name",1));
     ko.applyBindings(self)

     self.addItem = function()
     {
        self.somewhere.push(this);
        self.anItem = new AnItem("",1); 
     };

})();