2016-01-03 99 views
1

我想部署一個輸入字段(<input..>)有一個佔位符和職稱(提示),將工作如下替代字符串:Angularjs HTML佔位符和標題

有一個範圍變量「的myString」,可以要麼是未定義的/空的,要麼將字符串分配給它。如果它是空的,則應該顯示一個默認字符串作爲佔位符,否則將顯示「myString」的值。

我正在使用AngularJS,但是ng-if似乎沒有提供一個好的解決方案(即,使用相同的HTML兩次,並根據myString的值顯示任一個)。

感謝

回答

0

您可以使用||操作來渲染默認字符串中的falsy(未定義或空)的情況下myString

<input placeholder="{{ myString || 'Default placeholder' }}"> 
+0

這就是我一直在尋找的東西,它的工作原理與我想要的完全一樣。謝謝@dfsq !!! – FDavidov

1
<input ng-model="modelName" placeholder="{{placeHolderString}}"> 

$scope.myString = ""; 
$scope.placeHolderString = $scope.myString != "" ? $scope.myString : defaultString; 

如果每次的myString的價值變化。您可能需要在該變量上編寫一個手錶,例如:

$scope.$watch('myString', function (newVal, oldVal) { 
    // assign whatever string you have to assign to the placeHolderstring based on the new Value 
});