我在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>
答案 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
的最新版本