我正在尝试使用表单通过post向php脚本发送一个原型ajax请求,然后显示一个成功和失败的警告窗口。
我目前正在使用这段代码
<div id="reservationRequestForm">
<form name="requestReservationForm" method="post" onsubmit="new Ajax.Request('admin/process/process_reservation_request.php', {onSuccess: function() {alert('Success');} , onFailure: function() {alert('Failure');}, method:'post'}; return false;">
....
<input type="submit" class="buttonGreen" value="Send Request" onClick="hideDiv('reservationRequestForm');"/>
</form>
</div>我也不希望响应被处理(它无论如何都是空的)。我只想知道它是成功还是失败。
此外。我希望当js被禁用时,表单能够优雅地降级。
现在,这段代码什么也不做。我做错了什么?
发布于 2009-06-19 00:03:32
如果onsubmit事件没有被处理,那么您的表单就不会被提交。
您的表格中是否包含以下内容之一?
<input type='submit' ... />
<input type='image' ... />当单击上面的两个元素(或用空格/enter激活)时,将提交表单。然后,您拥有的onsubmit事件处理程序应该会捕获它,并且返回false应该会停止默认操作(更改页面)。
而且,您的ajax.Request调用实际上似乎并没有使用来自表单本身的任何表单信息。Ajax.Request需要知道要发送什么信息。
,你刚才少了一个右括号。请使用以下内容
<form name="requestReservationForm" method="post" onsubmit="new Ajax.Request('admin/process/process_reservation_request.php', {onSuccess: function() {alert('Success');} , onFailure: function() {alert('Failure');}, method:'post', parameters:Form.serialize(this) }); return false;">https://stackoverflow.com/questions/1015795
复制相似问题