사용자는이 행을 편집 할 수 있으며이 행의 모든 셀에 데이터가 채워지면 해당 행은 테이블의 나머지 행과 마찬가지로 읽기 전용이됩니다. 결국 행을 삭제 한 후에 다른 행은 정상적으로 움직이지 않고 아래로 움직여야합니다. JQuery로 테이블의 셀을 읽기 전용으로 만들기
0
A
답변
1
$('input[type=text]').blur(function(){
parentTr = $(this).parent().parent();
var canBeReadOnly = true;
$(parentTr).find('input').each(function(){
if($(this).val().length == 0)
{
canBeReadOnly = false;
}
}) ;
if(canBeReadOnly)
{
$(parentTr).find('input').each(function(){
$(this).prop('disabled', true);
});
}
});
그리고 하나 개의 행을 숨기는
$(document).ready(function()
{
$(document).on("click", "input", function(){
$("tr").each(function(){
var readOnly = true;
$(".cell td").each(function(){
if($("input").val()){
rd = false;
}
});
if(readOny){
$(".cell td").each(function(){
$("input").prop("readonly",true);
});
}
});
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<body>
<table>
<tr class="prototype">
<td class="special"><button type="button" class="delete">Delete</button></td>
<div class="cell">
<td><input type="text" value></td>
<td><input type="text" value></td>
<td><input type="text" value></td>
<td><input type="text" value></td>
<td><input type="text" value></td>
</div>
<td class="special"><button type="button" class="add">Add</button></td>
</tr>
<tr class="row">
<td class="special"><button type="button" class="delete">Delete</button></td>
<div class="cell">
<td><input type="text" value="aaa"></td>
<td><input type="text" value="aaa"></td>
<td><input type="text" value="aaa"></td>
<td><input type="text" value="aaa"></td>
<td><input type="text" value="aaa"></td>
</div>
<td class="special"><button type="button" class="add">Add</button></td>
</tr>
<tr class="row">
<td class="special"><button type="button" class="delete">Delete</button></td>
<div class="cell">
<td><input type="text" value="bbb"></td>
<td><input type="text" value="bbb"></td>
<td><input type="text" value="bbb"></td>
<td><input type="text" value="bbb"></td>
<td><input type="text" value="bbb"></td>
</div>
<td class="special"><button type="button" class="add">Add</button></td>
</tr>
<tr class="row">
<td class="special"><button type="button" class="delete">Delete</button></td>
<div class="cell">
<td><input type="text" value="ccc"></td>
<td><input type="text" value="ccc"></td>
<td><input type="text" value="ccc"></td>
<td><input type="text" value="ccc"></td>
<td><input type="text" value="ccc"></td>
</div>
<td class="special"><button type="button" class="add">Add</button></td>
</tr>
<tr class="row">
<td class="special"><button type="button" class="delete">Delete</button></td>
<div class="cell">
<td><input type="text" value="ddd"></td>
<td><input type="text" value="ddd"></td>
<td><input type="text" value="ddd"></td>
<td><input type="text" value="ddd"></td>
<td><input type="text" value="ddd"></td>
</div>
<td class="special"><button type="button" class="add">Add</button></td>
</tr>
<tr class="row">
<td class="special"><button type="button" class="delete">Delete</button></td>
<div class="cell">
<td><input type="text" value="eee"></td>
<td><input type="text" value="eee"></td>
<td><input type="text" value="eee"></td>
<td><input type="text" value="eee"></td>
<td><input type="text" value="eee"></td>
</div>
<td class="special"><button type="button" class="add">Add</button></td>
</tr>
</table>
$('.delete').click(function(){
$(this).parent().parent().slideUp('slow');
});
+0
나는 이것을 시도했지만 여전히 작동하지 않습니다. – blueberry
+0
왜 그런 말을 할 수 있습니까? 검사관을 통해 코드를 추적하고 구멍을 찾을 수 있습니까? 논리가 정확하기 때문에 문제가 있다면 심각한 것은 아닐 것입니다. –
+0
@blueberry 위의 코드를 다시 확인하고 편집하고 테스트하십시오. 그것은 작동해야합니다;) –
관련 문제
- 1. 엑셀 vba : 테이블 셀을 읽기 전용으로 설정
- 2. 쿠키를 읽기 전용으로 만들기
- 3. JQxGrid를 읽기 전용으로 만들기
- 4. SVG 요소를 읽기 전용으로 만들기
- 5. TFS 프로젝트를 읽기 전용으로 만들기
- 6. 어떻게 결과 셀을 읽기 전용으로 만듭니 까?
- 7. JSF로 만든 테이블의 셀을 jQuery로 변경
- 8. 읽기 전용으로 바인딩 DependencyProperty를 다른 읽기 전용으로 설정합니다. DependencyProperty
- 9. AvalonEdit에서 라인을 읽기 전용으로 만들기 (및 유지)
- 10. Rails 5 API를 읽기 전용으로 만들기
- 11. SQLite - 읽기 전용으로 만 데이터베이스 만들기
- 12. 다이 모라에서 Modelica 클래스를 읽기 전용으로 만들기
- 13. 양식의 모든 필드를 읽기 전용으로 만들기
- 14. xml 스프레드 시트를 읽기 전용으로 만들기
- 15. Magento 백엔드 - 가격 필드를 읽기 전용으로 만들기
- 16. 조건부로 SugarCRM에서 필드 읽기 전용으로 만들기
- 17. 파이썬 xlwt - 열을 읽기 전용으로 만들기 (셀 보호)
- 18. EXtjs 3.2 : 특정 셀을 편집 불가능하거나 읽기 전용으로 설정하려면 어떻게합니까?
- 19. 기본적으로 Excel은 읽기 전용으로 표시되지 않고 읽기 전용으로 열어야합니다.
- 20. 폴더가 읽기 전용으로 변경됨
- 21. 메모리를 읽기 전용으로 노출
- 22. 읽기 전용으로 SQLite 최적화
- 23. 개체를 읽기 전용으로 반환
- 24. EntryElement를 Monotouch.Dialog에서 읽기 전용으로 사용할 수 있습니까?
- 25. C에서 읽기 전용으로 단일 char을 지정 하시겠습니까?
- 26. 새 복제 된 div를 대화 상자에서 읽기 전용으로 만들기
- 27. 가능합니까? ASP.NET 텍스트 상자에서 특정 줄을 읽기 전용으로 만들기
- 28. 텍스트 필드를 편집 할 수없고 읽기 전용으로 만들기
- 29. 한 폴더에서 다른 폴더로 모든 파일을 복사하여 읽기 전용으로 만들기
- 30. TFS 폴더 만들기 및 업데이트 권한이 읽기 전용으로 설정되었습니다.
"* 사용자는이를 편집 할 수있는이 같은 뭔가를 시도했다 행 * "- 어떤 행? "* ... 행은 읽기 전용이됩니다 (테이블의 나머지 행과 같습니다) *"- 테이블에'readonly '로 간주 될 수있는 행이 없습니다. 문제를 다시 설명해 주시겠습니까? 정확하게, 환경 설정. –