html 엔티티 ( -…«)가 포함 된 javaScript에서 를 동적으로 생성하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/425234

문제

추가하고 싶습니다u003Coption> 요소 au003Cselect> 요소u003Coption> 요소의 텍스트에는 HTML 엔티티가 포함됩니다.

HTML에서 코드는 다음과 같습니다.

<select name="test" id="test">
    <option value="">&mdash; Select One &mdash;</option>
</select>

내 JavaScript 코드는 다음과 같습니다.

function selectOne() {
  var e = document.getElementById('test');
  e.options[0] = new Option('&mdash; Select One &mdash;', '');
}

그러나 이것을 테스트하는지 알 수 있듯이 - 탈출됩니다. 시도했을 때도 같은 결과를 얻었습니다.

e.options[o].text = '&mdash; Select One &mdash;';

(관찰 된 행동은 Internet Explorer 7 ... Firefox, Safari 등으로 테스트하지 않았습니다. - Internet Explorer 7은 현재 필요한 유일한 브라우저입니다.)

도움이 되었습니까?

해결책

방금 유니 코드 JavaScript Escape를 사용할 수 있다는 것을 깨달았습니다.

e.options[0] = new Option('\u2014 Select One \u2014', '');

다른 팁

엔티티를 탈출 할 필요가 없습니다. 다음과 같이 작동합니다.

function selectOne() {
      var e = document.getElementById('test');
      e.options[0] = new Option('— Select One —', '');
}

text 문자 그대로 취해질 수 있기 때문에 속성은 에스코지받지 않습니다. 사용하는 경우 innerHTML, 엔티티는 해당 문자로 변환됩니다.

e.options[o].innerHTML = '&mdash; Select One &mdash;';
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top