По какой-то причине эта форма продолжает обновлять страницу, и я понятия не имею, почему, поскольку у меня есть другая форма на странице с другим идентификатором, но с тем же сценарием, и он не обновляется. Я попытался использовать preventDefault (); но также он не работает. Может кто-нибудь скажет мне, где я ошибся в этой форме или сценарии?
благодаря
Верх страницы
<script type="text/javascript" src="../JS/jquery.js"></script> <script type="text/javascript" src="../JS/jquery-ui.js"></script> <script type="text/javascript" src="../JS/member_info.js"></script>
Форма
<form id="central"> <table width="40%" class="search"> <tr> <td width="39%" align="left"><p><b>Inception Date:</b></p><input size="10" maxlength="10" id="creddate" type="text" value="<?php echo $creddate; ?>" /></td> <td width="41%" align="left"><p><b>Surety:</b></p><input size="15" maxlength="15" id="surety" type="text" value="<?php echo $surety; ?>" /></td> <td width="20%" align="left"><p><b>Credit Limit:</b></p><input size="15" maxlength="15" id="creditlimit" type="text" value="<?php echo $credlimit; ?>" /></td> </tr> </table> <br /> <table style="margin:0 auto"> <tr> <td><input type="hidden" id="code" size="12" readonly="true" value="<?php echo $code; ?>" /></input></td> <td><input type="submit" value=" Save " /></input></td> <td><p align="center" id="central_status"></p></td> </tr> </table> </form>
Сценарий – связанный с member_info.js
$(document).ready(function(){ $("form#central").submit(function() { var code = $('#code').val(); var inception = $('#creddate').val(); var surety = $('#surety').val(); var credit = $('#creditlimit').val(); $.ajax ({ type: "POST", url: '../members/edit_central.php', data: {code: code, creddate: creddate, surety: surety, creditlimit: creditlimit}, success: function(data) { $('#central_status').html(data); } }); return false; }); });
Удостоверьтесь, что вы preventDefault()
сразу после preventDefault()
формы. Не делайте ничего еще, прежде чем делать это (например, вызывать Ajax).
Например:
$("form#central").submit(function(e) { e.preventDefault(); // Your other long running (possibly async) // operations here }
Кроме того, убедитесь, что вы не добавляете форму динамически на страницу. Если вы это сделаете, вам нужно приложить событие отправки в прямом эфире. Вот так:
$(document).on('submit', 'form#central', function(e){ // same as above });
использовать кнопку ввода типа insted of submit
<input type="button" value=" Save " name="saveButton" id="saveButton" />
в простом возврате false в конце обработки события click делают трюк, например:
$('form input[type="submit"]').click(function() { .... return false; })