JavaScript에서 단일 따옴표( ')를 이스케이프하려면 어떻게 해야 합니까?
업데이트: 이 질문에 대한 최신 답변을 드리겠습니다.먼저 아래 내용을 수행하려는 경우 대신 이벤트 청취자를 추가하여 이벤트를 관리할 것을 권장합니다.프로젝트에 jQuery를 사용하고, 그 구문을 사용하여 DOM을 사용하는 것보다 이벤트 청취자를 관리할 것을 강력히 권장합니다.
질문.
좋아, 기본적으로 이렇게 하는 거야
document.getElementById("something").innerHTML = "<img src='something' onmouseover='change(\'ex1\')' />";
\"를 삽입하는 큰따옴표(")는 사용하지 않습니다.저는 하나의 견적만 원하기 때문에 사용할 때 이중으로 넣지 않도록 하고 있습니다.나는 최종 결과에서 이것을 달성하기 위해 노력하고 있다.
<img src="something" onmouseover="change('ex1')" />
탈출은 나한테는 안 통한다.
나의 마크된 답변은 잘 작동하지만, 청소기(그리고 더 프로페셔널해 보이는 IMO)가 loganfsmyth의 답변입니다.
브라우저가 마지막에 표시되는 것을 항상 고려해야 합니다.이 경우, 다음과 같이 표시됩니다.
<img src='something' onmouseover='change(' ex1')' />
즉, "onmouseover" 속성은change(
그리고 또 다른 '고민'이 있어요ex1')'
아무 가치도 없어요.
사실 HTML에서는\
탈옥 캐릭터로.하지만 그건 알아채지 못한다."
그리고.'
각각 이스케이프 인용문과 아포스트로피로 표시됩니다.
이 지식을 바탕으로 다음을 수행합니다.
document.getElementById("something").innerHTML = "<img src='something' onmouseover='change("ex1")' />";
...그렇다면 JavaScript 인용문만 사용할 수 있습니다.
document.getElementById("something").innerHTML = "<img src='something' onmouseover='change(\"ex1\")' />";
답은 매우 간단합니다.
당신은 이미 큰따옴표로 묶어서 가지고 있기 때문에 그것을 피할 필요가 없습니다.\
.
단일 따옴표로 단일 따옴표를 이스케이프하는 경우:
var string = 'this isn\'t a double quoted string';
var string = "this isn\"t a single quoted string";
// ^ ^ same types, hence we need to escape it with a backslash
탈출하고 싶다면\'
에 대한 bashslash를 회피할 수 있습니다.\\
에 대한 견적서\'
다음과 같이 합니다.
var string = 'this isn\\\'t a double quoted string';
// vvvv
// \ ' (the escaped characters)
그러나 따옴표 유형이 다른 문자열이 포함된 경우 이스케이프할 필요가 없습니다.
var string = 'this isn"t a double quoted string';
var string = "this isn't a single quoted string";
// ^ ^ different types, hence we don't need escaping
탈출할 수 있습니다.'
JavaScript에서처럼\'
값은 실제로 HTML 속성의 내부에 있기 때문에,'
"<img src='something' onmouseover='change('ex1')' />";
document.getElementById("something").innerHTML = "<img src=\"something\" onmouseover=\"change('ex1')\" />";
또는
document.getElementById("something").innerHTML = '<img src="something" onmouseover="change(\'ex1\')" />';
작동해야 하는데...
언급URL : https://stackoverflow.com/questions/16134910/how-do-i-escape-a-single-quote-in-javascript
'programing' 카테고리의 다른 글
query Selector, 와일드카드 요소가 일치합니까? (0) | 2022.10.02 |
---|---|
Python only mysql.connector를 maria 호환 API로 대체DB (0) | 2022.10.01 |
MariaDB AUTO_INCREMENT 최대값(부호 없음)으로 점프 (0) | 2022.10.01 |
PHP가 명령줄에서 입력을 기다립니다. (0) | 2022.10.01 |
자바 주석 (0) | 2022.10.01 |