日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

anglar ajax执行2次的原因,AngularJS与Ajax表单提交需要单击两次

發(fā)布時間:2025/3/15 javascript 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 anglar ajax执行2次的原因,AngularJS与Ajax表单提交需要单击两次 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我需要從HTML頁面執(zhí)行以下活動:

用戶輸入電子郵件和密碼進行注冊

用戶單擊時將表格發(fā)送到控制器 Submit

Control使用AJAX創(chuàng)建到RESTful Server的JSON請求,服務器進行相應的響應。

根據服務器的響應,用戶應獲得警報窗口,并register.html在“提交”下方的當前頁面()上顯示一條消息。如果是“成功-已注冊”或“失敗-無法注冊”。

但是,目前它的工作方式如下:1),2),3)正常工作。

用戶在第一次單擊Submit相應的消息時會得到警報窗口。

用戶僅在Submit 再次 單擊時獲得打印的消息,但再次顯示警告窗口。

如果我alert('Something')從JS中刪除,則必須單擊兩次以將消息打印在register.html

另外,我想提醒您注意,單擊兩次也會使服務器調用兩次。它的行為就好像在服務器調用后已暫停,然后打印我應該單擊“提交”的消息一樣。

register.html

Submit

{{msgalert}}

我的JS控制器看起來像這樣 stackoverflow_q3.js

// create angular controller

var register = angular.module('Main-app');

register.controller('registerController', function ($scope, $http, $location) {

// function to submit the form after all validation has occurred

$scope.submitForm = function (isValid, user) {

console.log('Stackoverflow JS func caled');

var regData = {

"email": user.email,

"password": user.password1

};

var jsonData = JSON.stringify(regData);

var request = $.ajax({

url: 'myurl',

type: 'POST',

data: jsonData,

headers: {

'Accept': 'application/json',

'Content-Type': 'application/json'

},

dataType: 'json',

complete: function (response) {

console.log(response.responseText);

if (response.responseText == 'success') {

console.log('Registration Success');

alert('Success');

$scope.msgalert = 'Registration Success, Proceed to Login and Continue';

} else if (response.responseText == 'fail') {

alert('registration failed');

$scope.msgalert = 'Registration Failed, Please try again';

}

}

});

};

});

另外index.html我提到了控制器:

知道如何通過一次“提交”單擊即可完成所有這些活動嗎?

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的anglar ajax执行2次的原因,AngularJS与Ajax表单提交需要单击两次的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。