유형 및 이름별 대상 입력(계속)
페이지의 모든 입력이 아닌 일부 입력에 대해 일부 확인란 입력을 숨겨진 입력으로 변경해야 합니다.
<input type="checkbox" name="ProductCode"value="396P4">
<input type="checkbox" name="ProductCode"value="401P4">
<input type="checkbox" name="ProductCode"value="F460129">
아래의 jquery 코드는 모든 확인란이 숨겨진 입력으로 변경되는 유형별 입력만 선택합니다. 선택기로 입력 유형="productcode"와 name="ProductCode"를 모두 확인하여 변경하고자 하는 대상을 구체적으로 지정할 수 있는 방법이 있습니까?
$("input[type='checkbox']").each(function(){
var name = $(this).attr('name'); // grab name of original
var value = $(this).attr('value'); // grab value of original
var html = '<input type="hidden" name="'+name+'" value="'+value+'" />';
$(this).after(html).remove(); // add new, then remove original input
});
다중 특성 선택기를 원하는 경우
$("input[type='checkbox'][name='ProductCode']").each(function(){ ...
또는
$("input:checkbox[name='ProductCode']").each(function(){ ...
CSS 클래스를 사용하여 선택하고자 하는 것을 식별하는 것이 더 나을 것입니다. 그러나 많은 현대 브라우저들이 구현하기 때문에document.getElementsByClassName
요소를 선택하는 데 사용될 방법과 그것에 의해 선택하는 것보다 훨씬 더 빠릅니다.name
기여하다
다음과 같은 방법으로 속성 선택기를 결합할 수 있습니다.
$("[attr1=val][attr2=val]")...
요소가 두 조건을 모두 만족해야 합니다.물론 이것은 두 개 이상 사용할 수 있습니다.또한 하지 마세요.[type=checkbox]
jQuery에는 이를 위한 선택기가 있습니다. 즉, 최종 결과는 다음과 같습니다.
$("input:checkbox[name=ProductCode]")...
그러나 속성 선택기는 느리기 때문에 가능한 경우 ID와 클래스 선택기를 사용하는 것이 좋습니다.마크업을 다음으로 변경할 수 있습니다.
<input type="checkbox" class="ProductCode" name="ProductCode"value="396P4">
<input type="checkbox" class="ProductCode" name="ProductCode"value="401P4">
<input type="checkbox" class="ProductCode" name="ProductCode"value="F460129">
다음 중 훨씬 빠른 선택기를 사용할 수 있습니다.
$("input.ProductCode")...
input[type='checkbox', name='ProductCode']
그것이 CSS 방식이고 나는 그것이 jQuery에서 작동할 것이라고 거의 확신합니다.
언급URL : https://stackoverflow.com/questions/3221094/target-input-by-type-and-name-selector
'sourcetip' 카테고리의 다른 글
IMG dir는 db에 저장할 수 없지만 쿼리에 사용된 동일한 변수에서 볼 수 있습니다. (0) | 2023.08.21 |
---|---|
Spring Security를 사용한 HTTPS 로그인이 HTTP로 리디렉션 (0) | 2023.08.16 |
Android 앱의 그리드 보기 VS 그리드 레이아웃 (0) | 2023.08.16 |
CSV에 한 줄씩 쓰는 방법은 무엇입니까? (0) | 2023.08.16 |
대응 기본 표준 시간대 및 형식 지정 옵션 (0) | 2023.08.16 |