2015-11-19 70 views
1

我有一个输入字段的下列表单。我想确保重点得到重新设置为相同的输入后回车/提交表单:提交/输入后,将焦点保持在同一输入字段

<form action="https://stackoverflow.com/a/message/new" method="post" id="myform"> 
    <div class="form-group"> 
     <div class="input-group"> 
     <input name="body" id="myField" class="form-control" placeholder="Write message here..." /> <span class="input-group-btn"> 
         <button class="btn btn-default" type="submit" value="{{ _(' Post ') }}">Submit</button> 
         </span> 
     <input type="hidden" name="next" value="{{ request.path }}"> {% module xsrf_form_html() %} 
     </div> 
    </div> 
    </form> 
</div> 

我试图做以下几点:

<script> 
    $(function() { 

     //Start check on form submit 
     $('#myform').submit(function(){  

     $('#myField').focus(); 

     }); 

    });  
</script> 

但这并没有工作

回答

1

submit事件被激发时,表单将提交并刷新/更改页面,如果其未被阻止,则可以阻止使用表单提交event.preventDefault();

$("#myForm").submit(function(event) { 
    event.preventDefault(); 
}); 

但是,如上所述,这不会像提到的那样提交表单,除非您正在发出ajax请求,否则不会提供您想要的表单。您可以在页面加载时将焦点设置在输入字段上,并且以这种方式将焦点保留在字段上:

$(function() { 
    $('#myField').focus(); 
});