에 jQuery를 추가?내가 같은 HTML을 AngularJS와 컨트롤러
var maxLength = 15;
$('#example > option').text(function(i, text) {
if (text.length > maxLength) {
return text.substr(0, maxLength) + '...';
}
});
에 jQuery를 추가?내가 같은 HTML을 AngularJS와 컨트롤러
var maxLength = 15;
$('#example > option').text(function(i, text) {
if (text.length > maxLength) {
return text.substr(0, maxLength) + '...';
}
});
당신은 정말 일을하고자하는 방법 AngularJS와을 위반하는, 그런 식으로 그 일을하지 말아야하며, 당신의 코드를 보면 다른 AngularJS와 개발자를 좌절 것입니다.
대신 옵션 목록을 컨트롤러의 범위 속성으로 선언하고 텍스트를 수정하여 필요한 길이로 자릅니다.
마크 업 :
<select id="example" ng-options="option.value as option.text for option in options">
컨트롤러 코드 :
var maxLength = 15;
$scope.options = ['Short', 'Oh dear, this option has really long text :('].map(function (text, i) {
return {
value: i + 1,
text: text.length <= maxLength ? text : text.substring(0, maxLength) + '...'
};
});
고마워. 나는 정말 새로운 각도 다. [ '짧다', '오 이런,이 옵션은 정말 긴 텍스트를 가지고 있습니다 :' '] 옵션에서 값을 동적으로 전달할 수 있습니까? –
나는 당신이 옵션을 얻는 위치에 따라 다르다. 내가 사용했던 하드 코드 된 배열 대신, 내가 말하고자하는 문자열의 배열에 접근 할 수있는 곳이라면 내가 언급 한 컨트롤러 코드를 넣는다. – GregL
는 지시를위한 작업 같은 소리! https://docs.angularjs.org/guide/directive. 그러나, 당신은 정말로 일을하는 각기 다른 방법을 포용하려고 노력해야하며 다른 옵션이 없다면 jquery로 되돌아 가지 않는 것이 좋습니다. jquery가없는 각도 함수가있는 이유가 있습니다. – Claies