sourcetip

유형 및 이름별 대상 입력(계속)

fileupload 2023. 8. 16. 22:34
반응형

유형 및 이름별 대상 입력(계속)

페이지의 모든 입력이 아닌 일부 입력에 대해 일부 확인란 입력을 숨겨진 입력으로 변경해야 합니다.

<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

반응형