Jquery .AJAX不适用于click事件

时间:2013-08-27 09:30:05

标签: ajax jsp jquery servlets

我将实施以下内容:

当用户按下按钮时,对servlet执行AJAX查询。根据服务器的请求,我更改标签文本。

的web.xml

 <servlet>
        <servlet-name>RemindPassword</servlet-name>
        <servlet-class>app.RemindPassword</servlet-class>
  </servlet>
  <servlet-mapping>
        <servlet-name>RemindPassword</servlet-name>
        <url-pattern>/RemindPassword</url-pattern>
  </servlet-mapping>

按钮的HTML代码

 <form>
   <div class="field">
      <label for="email">Your e-mail:</label>
      <input name="email" type="text" class="t">
   </div>
   <input id ="btn" type="submit" value="Send" />
 </form>

JS

   <script type="text/javascript"> 
$(document).ready(function() {  
    $('#btn').click(function() { 
        $.ajax({
            type: "GET",
            url: "/RemindPassword",
            //dataType:text,
            //data: $("#registerSubmit").serialize(),
            success: function(msg){
               $('input[type="submit"]').after("<label for='submit'>" + msg+" " +"</label>");
            },
            error: function(XMLHttpRequest, textStatus, errorThrown) { 
               $('input[type="submit"]').after("<label for='submit'>" + fail+" " +"</label>");
            }
        });
    });
});     

可能有用的信息:

我从domain/someJSP/RemindPassword执行AJAX查询 我把servlet放在我的web应用程序的根目录中,故意在AJAX调用中将URL放在URL之前。没有成功。
当我使用.get JQUERY函数时,当我在渲染位上调用它时,当我调用ajax调用onclick时,它无效。 .ajax在两种情况下都不起作用。

1 个答案:

答案 0 :(得分:1)

更改ID选择器,添加防止默认值并更好地处理表单提交而不是按钮单击

  $('#form1').click(function(e) { 
    e.preventDefault()
  • 假设表单标记具有ID = form1