[JQUERY] 어떻게을 가진 요소를 선택 jQuery를받을 수 있나요. 자신의 ID에서 (기간)?
JQUERY어떻게을 가진 요소를 선택 jQuery를받을 수 있나요. 자신의 ID에서 (기간)?
해결법
-
1.Google 그룹스에서 :
Google 그룹스에서 :
그래서, 난 당신이보고있는 것 같아요
$(function() { $.getJSON("/Location/GetCountryList", null, function(data) { $("#Address\\.Country").fillSelect(data); }); $("#Address\\.Country").change(function() { $.getJSON("/Location/GetRegionsForCountry", { country: $(this).val() }, function(data) { $("#Address\\.State").fillSelect(data); }); }); });
또한 내가 CSS 표기법에 사용 된 문자가있는 ID로 요소를 선택하려면 어떻게 확인? JQuery와 자주 묻는 질문에.
-
2.ID가 공백이 포함 된 경우 당신은 jQuery를 아이디 선택기를 사용할 수 없습니다. 속성 선택기를 사용합니다 :
ID가 공백이 포함 된 경우 당신은 jQuery를 아이디 선택기를 사용할 수 없습니다. 속성 선택기를 사용합니다 :
$('[id=foo bar]').show();
가능하면 요소 유형을뿐만 아니라 지정
$('div[id=foo bar]').show();
-
3.jQuery를 위해 탈출 :
jQuery를 위해 탈출 :
function escapeSelector(s){ return s.replace( /(:|\.|\[|\])/g, "\\$1" ); }
사용 예 :
e.find('option[value='+escapeSelector(val)+']')
여기에 더 많은 정보.
-
4.그냥이 문제를 해결 출시 된 ASP.NET MVC의 릴리스 후보는 지금 ID 속성에 대한 밑줄로 점을 대체합니다.
그냥이 문제를 해결 출시 된 ASP.NET MVC의 릴리스 후보는 지금 ID 속성에 대한 밑줄로 점을 대체합니다.
<%= Html.TextBox("Person.FirstName") %>
에 렌더링
<input type="text" name="Person.FirstName" id="Person_FirstName" />
자세한 내용은 14 페이지에서 시작, 릴리스 정보를 볼 수 있습니다.
-
5.이것은 jQuery를 선택기 문서에 설명되어 있습니다 :
이것은 jQuery를 선택기 문서에 설명되어 있습니다 :
즉, 접두사. 다음과 같이 \\과 :
$("#Address\\.Country")
문제는 점이다. 특별한 의미를 가지고, 문자열 다음은 클래스 선택으로 해석됩니다. 그래서 $ ( '#의 Address.Country')는
일치합니다.\\한다. 탈출 할 때, 점은 당신이 원하는 ID와 일치하는, 특별한 의미를 가진 일반 텍스트로 처리됩니다
.이 모든 문자를 적용 "# $ % & '() * +, / :; <=> @ [\] ^`!.? {|}. ~ jQuery를의 선택과 같은 특별한 의미가 다른 것이다 단지의 앞에 추가 \\ 일반 텍스트로 처리합니다.
bdukes 답변에서 언급 한 바와 같이, 우리는 2 개 \ 문자가 필요한 이유가있다. \ 자바 스크립트에서 다음 문자를 이스케이프합니다. 그 자체가 자바 스크립트 문자열 "#Address \ .Country는"이는 \를 참조 litterally 다음과 같은 특성을 가지고 문자열이 $에 인수로 전달 될 때를 제거하는 의미로 해석됩니다 해석 할 때 (). 수단 jQuery를 여전히 "#의 Address.Country"와 같은 문자열을 볼 수있다.
의 그 두 번째는 \ 플레이에 들어오는 곳. 첫 번째는 리터럴 (비 특수) 문자로 두 번째를 해석 자바 스크립트를 알려줍니다. 두 번째는 jQuery를 볼 될 것이며이 수단은 다음과 같은 것을 이해합니다. 문자는 리터럴 문자입니다.
휴! 어쩌면 우리는 그것을 시각화 할 수 있습니다.
// Javascript, the following \ is not special. // | // | // v $("#Address\\.Country"); // ^ // | // | // jQuery, the following . is not special.
6.두 개의 백 슬래시 키우면 확인을 사용하여 작업을 키우면. 그러나 동적 이름을 사용하는 경우, 내가 변수 이름을 의미, 당신은 문자를 교체해야합니다.
두 개의 백 슬래시 키우면 확인을 사용하여 작업을 키우면. 그러나 동적 이름을 사용하는 경우, 내가 변수 이름을 의미, 당신은 문자를 교체해야합니다.
당신이 당신의 변수 이름을 변경하지 않을 경우이 작업을 수행 할 수 있습니다 :
var variable="namewith.andother"; var jqueryObj = $(document.getElementById(variable));
당신이 당신의 JQuery와 개체가보다.
7.그냥 추가 정보 : 이 ASP.NET MVC의 문제점 # 2403을 확인하십시오.
그냥 추가 정보 : 이 ASP.NET MVC의 문제점 # 2403을 확인하십시오.
문제가 해결 될 때까지, 나는 당신이 $ 같은 jQuery를 사용 그래서, 단순히 (이름이 아닌 속성에서) id 속성에 밑줄로 점을 대체 등 Html.TextBoxFixed 같은 내 자신의 확장 방법을 사용 ( "# Address_Street") 하지만 서버에, 그것은 Address.Street 같다.
샘플 코드는 다음과 같습니다 :
public static string TextBoxFixed(this HtmlHelper html, string name, string value) { return html.TextBox(name, value, GetIdAttributeObject(name)); } public static string TextBoxFixed(this HtmlHelper html, string name, string value, object htmlAttributes) { return html.TextBox(name, value, GetIdAttributeObject(name, htmlAttributes)); } private static IDictionary<string, object> GetIdAttributeObject(string name) { Dictionary<string, object> list = new Dictionary<string, object>(1); list["id"] = name.Replace('.', '_'); return list; } private static IDictionary<string, object> GetIdAttributeObject(string name, object baseObject) { Dictionary<string, object> list = new Dictionary<string, object>(); list.LoadFrom(baseObject); list["id"] = name.Replace('.', '_'); return list; }
8.나는 JQuery와 문서에 의해 주어진 해결책으로 문제를 해결
나는 JQuery와 문서에 의해 주어진 해결책으로 문제를 해결
내 기능 :
//funcion to replace special chars in ID of HTML tag function jq(myid){ //return "#" + myid.replace( /(:|\.|\[|\]|,)/g, "\\$1" ); return myid.replace( /(:|\.|\[|\]|,)/g, "\\$1" ); }
참고 : 내 코드에서 내가 다른 텍스트로 ID를 CONCAT 때문에 내가 "#"을 제거
폰트: JQuery와 문서는 특수 문자와 요소를 선택
from https://stackoverflow.com/questions/350292/how-do-i-get-jquery-to-select-elements-with-a-period-in-their-id by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] jQuery를 사용하여 첫 번째 선택 목록 옵션에 따라 두 번째 선택 목록을 변경하려면 (0) 2020.10.05 [JQUERY] jQuery를 객체 평등 (0) 2020.10.05 [JQUERY] 토글 쇼 / 버튼 숨기기 DIV? (0) 2020.10.05 [JQUERY] 배열에 고유 한 값을 얻는 방법 (0) 2020.10.05 [JQUERY] 없음 '액세스 제어는 - - 원산지를 허용'헤더는 요청 된 자원에 존재합니다. 원산지는 '...'때문에 접근이 허용되지 않는다 (0) 2020.10.05