我有输入文字框
<input id="search-input" class="search-field" ng-trim="false" ng-model="searchData" type="text" maxlength="130" placeholder="Look up product" />
在浏览器中按后退和前进按钮时,用户在按下后退/前进按钮之前输入的值仍然存在。我希望该值能够像在上一页中输入的那样进行更改(就像在Google搜索中一样)。 在浏览器后退/前进按钮上,我在检查器中看到以下内容:
<input id="search-input" class="search-field ng-valid ng-valid-maxlength ng-dirty ng-valid-parse ng-touched" ng-trim="false" ng-model="searchData" type="text" maxlength="130" placeholder="Look up product" style="">
因此,ng-dirty和ng-touching正试图告诉我按下了后退按钮,现在显示的值不是按后退按钮状态。但我需要在文本框中使用旧值。
注意:我为此文本框添加了一个手表:
$scope.$watch('searchData', function(newValue, oldValue) {
if (!newValue || newValue == "") {
$('#clear-submit').hide();
} else {
$('#clear-submit').show();
}
});