I made reset so it sets the value to '` '` and then `''`, so that it always changes. Without doing this, the input on the new dialog (and others) wouldn't clear on-open if they only had invalid text because knockout thinks it's already blank (just like the situation you explained before). However, you cannot set a file input to be non-empty by javascript, so I could not call reset if it's designed that way.