在html中捕获表单响应

时间:2013-08-02 02:52:01

标签: javascript jquery html ajax

我在html页面中有一个表单,我尝试使用AJAX捕获响应,但不知怎的,我没有将请求发送到服务器。我哪里错了?

<html>
<head>
<script>
$(function() {  
  $(".button").click(function() {  
  var clin=$("input#client").val();
  var us=$("input#username").val();
  var dataString='client='+clin+'&username='+us;
    $.ajax({  
          type: "POST",  
          url: "http://localhost:8080/services/web?wsdl/authen",  
          data: dataString,  
          success: function(response) {  
            alert("The server says: " + response);
          }  
        });  
            return false;   
  });  
});  
</script>

</head>
<body>
    <div id="myform">
        <form name="frm1">
            <table>
                Enter Your User Account:
                <tr>
                    <td>Client ID</td>
                    <td>
                        <input class="text-input" type="text" size="30" name="client" id="client">
                    </td>
                </tr>

                <tr>
                    <td>User ID</td>
                    <td>
                        <input class="text-input" type="text" size="30" name="username" id="username">
                    </td>
                </tr>

                <tr>
                    <td></td>
                    <td align="right">
                        <input type="submit" name="submit" value="get" class="button" id="submit_btn">
                    </td>
                </tr>
            </table>
        </form>
    </div>
</body>
</html>

我想在AJAX中捕获表单响应,但不确定我的确是否正确? 我提供我的服务器Web服务:

      xs:element name="authen"> <br>
         xs:complexType> <br>
             xs:sequence> <br>
                 xs:element name="ClientID" type="xs:string" nillable="true" minOccurs="0"/> <br>
                 xs:element name="UserID" type="xs:string" nillable="true" minOccurs="0"/> <br>
             /xs:sequence><br>
         /xs:complexType><br>
    /xs:element><br>
    xs:element name="authenResponse"><br>
         xs:complexType><br>
             xs:sequence><br>
                 xs:element name="return" type="xs:string" nillable="true" minOccurs="0"/><br>
             xs:sequence><br>
         xs:complexType><br>
    xs:element><br>

2 个答案:

答案 0 :(得分:0)

删除以下行:

document.getElementById("frm1").submit();

您使用的是ajax,因此您无需使用submit()提交表单。 此外,没有任何ID为frm1的表单,因此错误TypeError: Cannot call method 'submit' of null将会发生并停止您的脚本。

答案 1 :(得分:0)

如果您已添加jQuery源文件,请忽略此

<script type="text/javascript" src="/path/to/jquery.min.js"></script>

<head>标记开始后添加这样的脚本标记。

您必须下载并将jQuery文件放到适当的文件夹结构中。

以下是jQuery

的最新版本