內執行我的代碼:如何讓jQuery代碼順序
<html>
<head>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('form').submit(function(e) {
if (!$('.text').val()) {
e.preventDefault();
console.log('error');
return false;
}
});
});
</script>
</head>
<body>
<form>
<input type="text" class="text" value="" />
<input type="submit" value="Send" />
</form>
<script type="text/javascript">
$('form').submit(function(e) {
e.preventDefault();
$.ajax({
url: 'send.php',
type: 'post',
success: function() {
console.log('done');
}
});
});
</script>
</body>
</html>
我已經插入的JavaScript到<head>
和<body>
結束。
我的問題是,當我點擊提交按鈕,瀏覽器似乎在同一時間執行兩個我的代碼。
我不想將兩個代碼合併爲一個,我只是想執行<head>
上的javascript代碼,如果發生錯誤就停止,否則它會執行<body>
中的代碼。
如果你只是看看我的問題,並分享一些你學,我會非常感激。謝謝!
在這種情況下,身體中的一個將首先發生,因爲它首先受到約束,僅供參考。 –
要停止當前事件的所有未來事件處理程序,您需要停止ImmediatePropagation以及preventDefault。 –
你爲什麼不把兩種腳本結合起來? –