모든 행에 대해 GridView에 확인란과 텍스트 상자가 있는데 그 상태에 따라 텍스트 상자를 사용하거나 사용하지 않도록 설정할 수있는 자바 스크립트를 작성하고 싶습니다. 확인란 (선택 또는 선택 취소). 나는 JS에 행 인덱스를 어떻게 든 써야한다고 생각한다. 이것이 가능한가?GridViewRow에서 텍스트 상자 사용/사용 안 함
답변
덕분에, 난 그냥 포스트 백을 수행하여이 문제를 해결 일한 -하지 가장 좋은 방법을하지만 시간 제약으로 인해 그것은 논리적 인 선택이었다 내가 이것을 추가해야 할 유일한 것은 비활성화하는 것입니다
당신이 다음이 아주 쉽게으로 수행 할 수 있습니다 jQuery를 사용할 준비가 된 경우는 다음과 같습니다
$(document).ready(function() {
$('.grid tr').each(function() {
var r = $(this);
var c = r.find('.check');
var t = r.find('.text');
var f = function(c1, t1) { return function() {
if (c1.attr('checked')) {
t1.removeAttr('disabled');
}
else {
t1.attr('disabled', 'disabled');
}
};
};
c.click(f(c, t)); // attach click event handler
f(c, t); // set initial state
});
});
위 스크립트가있는 gridview 테이블이 grid
CSS 클래스로 장식되어 각 텍스트 박스와 체크 박스로 장식되어 있다고 가정한다 check
및 text
css 클래스입니다.
예.
는 다음을 수행하기 위해 필요한이 구현하려면 :
체크 박스의 상태에 따라 텍스트 상자의 활성화/비활성화를 처리하는 일반적인 자바 스크립트 함수를 작성;
예 : -
function ManageControlEnabling(sourceCheckBoxId, affectingControlId)
{
var sourceCheckBox = document.getElementById(sourceCheckBoxId);
var affectingControl = document.getElementById(affectingControlId);
var shouldEnable = false;if (sourceCheckBox && affectingControl)
{
shouldEnable = sourceCheckBox.checked;if(shouldEnable) affectingControl.disabled = false; else affectingControl.disabled = true;
}
}는 그리드보기의 행 - 데이터 바인딩 이벤트를 처리합니다. 체크 박스의 상태에 따라 텍스트 상자 (각 행)의 활성화/비활성화를 처리하기 위해 .Net 코드에서 유사한 기능을 구현합니다. 또한 JavaScript 기능을 확인란에 추가하십시오.
예 : -이 도움이된다면CheckBox checkSource; TextBox textAffecting; checkSource = e.Row.FindControl("cbSource") as CheckBox; textAffecting = e.Row.FindControl("tbAffecting") as TextBox; if(checkSource != null) { textAffecting.Enabled = checkSource.Checked; } checkSource.Attributes.Add("onclick", "ManageControlEnabling('" + checkSource.ClientID + "', '" + textAffecting.ClientID + "', true);");
를 참조하십시오.
감사합니다. 모든 답변에 대한
당신의 도움을 주셔서 감사합니다 :) 슬프게도 작동하지 않습니다 - rowdatabound 부분은 작동합니다 (속성을 추가하고 텍스트 상자는 체크 박스 상태에 따라 사용 불가능/사용 가능하게 설정 됨). 그러나 확인란을 클릭하면 텍스트 상자가 사용 가능하게되지 않습니다. 모든 if를 꺼내 텍스트 상자를 활성화해도됩니다. – Chris
- 1. CSS를 사용하여 텍스트 상자 사용 안 함
- 2. 변경시 텍스트 상자 사용 안 함 변경됨
- 3. Textview의 텍스트 배치 안 함
- 4. Labelfield 텍스트 배치 안 함
- 5. Windows Forms에서 자동 텍스트 상자 선택 안 함 Form.Show()
- 6. 자바 스크립트 페이지에서 텍스트 상자 사용 안 함
- 7. infragistics 평가판 메시지 상자 표시 안 함
- 8. IE에서 텍스트 커서 사용 안 함
- 9. HTML TextField 사용 안 함 제안 상자 드롭 다운
- 10. UIPickerView 사용 안 함
- 11. PrincipalContext 연결 안 함
- 12. System.Net.HttpUtility.HtmlEncode 인코딩 안 함 #
- 13. 행 렌더링 안 함
- 14. 스타일 업데이트 안 함
- 15. VTable 생성 안 함
- 16. SVN 적용 안 함?
- 17. Zend 선택 안 함
- 18. 마우스 입력 안 함
- 19. Android : 진행 대화 상자 회 전자 회전 안 함
- 20. 양식 다시 제출 대화 상자 표시 안 함
- 21. Adobe Air 인증 대화 상자 사용 안 함
- 22. 키 체인 권한 대화 상자 사용 안 함?
- 23. 보기 (ASP.NET MVC)에서 모든 컨트롤 (텍스트 상자, 확인란, 단추 등) 사용 안 함
- 24. 안 최근의 텍스트 목록
- 25. 사용 안 함 텍스트 필드 값이 SQL에서 인식되지 않음
- 26. Google 번역 사용 안 함 설정 방법 원본 텍스트 툴팁
- 27. 웹 응용 프로그램에서 기본 텍스트 선택 사용 안 함
- 28. QT/WebKit GUI에서 텍스트 선택 사용 안 함
- 29. HTML 텍스트 영역을 선택할 때 iPhone 키보드 사용 안 함
- 30. 드루팔 (Drupal의 텍스트 영역 확장기 사용 안 함?
asp.net 페이지에서 상태 유효성 검사를 봅니다. 페이지의 컨트롤 상태를 수정하기 때문에 상태 유효성 검사보기에서 오류가 발생합니다. 이러한 오류는 간헐적이며 디버그하기가 어렵지만 거기에 있습니다. 뷰 상태 유효성 검사를 사용하지 않도록 설정하면 JavaScript가 클라이언트 쪽에서 html 컨트롤을 수정할 기회를 주지만 서버 쪽에서는 그다지 신경 쓰지 않아도됩니다. – bleepzter