jquery / javascript에서 부모 div 이름 만 알려 주어 양식에서 모든 필드 (textarea / textfield / option / input / checkbox / submit 등)를 비활성화하는 방법이 있습니까?
jquery / javascript에서 부모 div 이름 만 알려 주어 양식에서 모든 필드 (textarea / textfield / option / input / checkbox / submit 등)를 비활성화하는 방법이 있습니까?
답변:
:input
부모 선택기와 함께 선택기를 사용해보십시오 .
$("#parent-selector :input").attr("disabled", true);
div
이름 으로 할 수 있어야 한다는 것입니다. 더 많은 정보가 제공되면 더 효율적인 솔루션을 얻을 수있었습니다.
$('#mydiv').find('input, textarea, button, select').attr('disabled','disabled');
$('#mydiv').find('input, textarea, button')
합니다.
$(document).ready(function () {
$('#chkDisableEnableElements').change(function () {
if ($('#chkDisableEnableElements').is(':checked')) {
enableElements($('#divDifferentElements').children());
}
else {
disableElements($('#divDifferentElements').children());
}
});
});
function disableElements(el) {
for (var i = 0; i < el.length; i++) {
el[i].disabled = true;
disableElements(el[i].children);
}
}
function enableElements(el) {
for (var i = 0; i < el.length; i++) {
el[i].disabled = false;
enableElements(el[i].children);
}
}
HTML 속성 'disabled'만 사용하여이를 달성하는 방법
<form>
<fieldset disabled>
<div class="row">
<input type="text" placeholder="">
<textarea></textarea>
<select></select>
</div>
<div class="pull-right">
<button class="button-primary btn-sm" type="submit">Submit</button>
</div>
</fieldset>
</form>
fieldset에 disabled를 설정하면 해당 fieldset 내부의 모든 필드가 비활성화됩니다.
$('fieldset').attr('disabled', 'disabled');
여러 지점에서 아래 기능을 사용하고 있습니다. 오른쪽 선택기가 사용되는 한 테이블의 div 또는 버튼 요소에서 작동합니다. ": button"만 다시 사용할 수 없습니다.
function ToggleMenuButtons(bActivate) {
if (bActivate == true) {
$("#SelectorId :input[type='button']").prop("disabled", true);
} else {
$("#SelectorId :input[type='button']").removeProp("disabled");
}
}
나를 위해 허용 된 답변이 작동하지 않는 일부 ASP 그물 숨겨진 필드가 있었으므로 표시되는 필드 만 비활성화하도록 선택했습니다.
//just to save the list so we can enable fields later
var list = [];
$('#parent-selector').find(':input:visible:not([readonly][disabled]),button').each(function () {
list.push('#' + this.id);
});
$(list.join(',')).attr('readonly', true);
내부 양식에 div
단순히 양식 입력 요소가 포함 된 경우이 간단한 쿼리는 태그 내의 모든 요소 를 비활성화 합니다 form
.
<div id="myForm">
<form action="">
...
</form>
</div>
그러나, 그것은 또한 것 비활성화 에 입력 요소 이외의 form
그것의 영향은 단지 형태의 각 유형에 따라서 적절한 majorly 입력 타입 요소에서 볼 수있는 바와 같이,!
$('#myForm *').attr('disabled','disabled');
readOnly
사용하지 말고 값을 유지하십시오 .