как этот код будет изменен, чтобы он не .focus()
объект первой формы, если он readonly
или disabled
, и для перехода к следующему вводу формы для фокуса?Как пропустить ReadOnly и Disabled входы при использовании .focus()
В настоящее время он возвращает ошибку, если первое поле ввода отключено, но я также хотел бы перейти к следующему полю ввода, если он тоже только для чтения, и если все входы отключены и только для чтения, тогда он не должен ничего фокусировать. .
<script language="javascript" type="text/javascript">
// Focus first element
$.fn.focus_first = function() {
var elem = $('input:visible', this).get(0);
var select = $('select:visible', this).get(0);
if (select && elem) {
if (select.offsetTop < elem.offsetTop) {
elem = select;
}
}
var textarea = $('textarea:visible', this).get(0);
if (textarea && elem) {
if (textarea.offsetTop < elem.offsetTop) {
elem = textarea;
}
}
if (elem) {
elem.focus();
}
return this;
}
</script>
Фактически использование input:enabled:visible
исправляет много моих проблем, но я до сих пор пытаюсь понять, если только для чтения, чтобы перейти к следующему.