我在php程序中点击的按钮上生成一个新文本框 HTML代码写为
<table id="additional_item_numbers">
<thead>
<tr>
<th>Item</th>
<th> Delete</th>
</tr>
</thead>
<tbody>
<tr><td><input type="text" class="form-control form-inps" size="50" name="additional_item_numbers[]" value="123" /></td><td>
<a class="delete_item_number" href="javascript:void(0);">Delete</a>
</td><tr>
</tbody>
</table>
我正在使用此代码生成新的文本框
<script type="text/javascript" language="javascript">
$("#additional_item_numbers").keyup(function(event){
if(event.keyCode == 13){
$("#additional_item_numbers tbody").append('<tr><td><input type="text" class="form-control form-inps" size="40" name="additional_item_numbers[]" value="" autofocus /></td><td> </td></tr>');
}
});
</script>
这会在需要的确切位置成功生成一个新输入框,但不会自动聚焦新生成的输入文本框。
我想自动聚焦新生成的文本框。
关键字autofocus
也不起作用,因为我已经测试过了。
非常感谢任何帮助。
修改 提交表单后,将通过以下代码在表单上调用函数
if ($this->input->post('additional_item_numbers') && is_array($this->input->post('additional_item_numbers')))
{
$this->Additional_item_numbers->save($item_id, $this->input->post('additional_item_numbers'));
}
else
{
$this->Additional_item_numbers->delete($item_id);
}
被叫函数是名为class
的{{1}}的一部分,定义为
Additional_item_numbers
但是只有当值在3到5之间或高达10时才会在数据库中添加值... 如果我们添加超过10个额外的项目编号。它不会添加所有值,或者有时会添加其中的一些值。 昨天,我们提交了150个值,但只将其中的5个添加到数据库中。
答案 0 :(得分:1)
尝试以下代码。
$("#additional_item_numbers").find("input[type='text']").last().focus();
答案 1 :(得分:0)
在追加html后尝试以下行
$("#additional_item_numbers").find("input.form-inps").focus();
答案 2 :(得分:0)
$.(document ).ready(function (){
$('#textbox_id').focus();
});