В основном у меня есть ряд 5 строк текстовых полей (каждая строка содержит 3 столбца) и одна текстовая область... вкладка в конце столбца 3 должна привести ее к текстовой области, а затем вкладка из текстовой области должна привести меня к следующая строка полей ввода/текста.
приведенный ниже код работает до степени табуляции через row1, переводя меня с row1 col3 на textarea_desc, а затем табуляция на textarea_desc смещает фокус на row2 col1, однако я не вижу, чтобы курсор отображался на row2 col1... если я добавил css, он hsows вверх в row2 col1, но курсора нет, поэтому я не могу вводить текст, мне нужно нажать на row2 col1, чтобы появился курсор, может кто-нибудь сказать мне, почему?
$('input[type="text"],textarea').on('focusout', function() {
var box_class=$(this).attr("class");
var row_id=$(this).parents('ul').attr('id');
if (box_class.indexOf("col3")>=0) {
$("#textarea_desc").focus();
$("#prev_row").val(row_id);
}
if (box_class.indexOf("textarea_desc")>=0) {
var prev_row=$("#prev_row").val();
var new_row=$("#prev_row").val().match(/\d+/);
new_row="#row"+(parseInt(new_row)+1)+"-col1";
$(new_row).focus();
}
});
хтм....
<ul id="row1" class="row">
<li class="col1" >1.</li>
<li class="col2"><input type="text" size="26" class="row1-col1" id="row1-col1" /></li>
<li class="col3"><textarea cols="28" rows="1" class="row1-col2 textareainp" id="row1-col2" ></textarea></li>
<li class="col4"><input type="text" size="10" class="row1-col3 " id="row1-col3" /></li>
</ul><ul id="row2" class="row">
<li class="col1" >2.</li>
<li class="col2"><input type="text" size="26" class="row2-col1" id="row2-col1" /></li>
<li class="col3"><textarea cols="28" rows="1" class="row2-col2 textareainp" id="row2-col2" ></textarea></li>
<li class="col4"><input type="text" size="10" class="row2-col3 " id="row2-col3" /></li>
</ul>
<textarea cols="40" rows="7" class="textarea_desc" id="textarea_desc" ></textarea>
<input type="hidden" id="prev_row" class="prev_row" value="" />
tabindex
для элементов? - person ATOzTOA   schedule 17.01.2013