QA@IT
«質問へ戻る

タグの修正とシンタックスハイライトの設定

5599
本文
 ログイン処理時にまずapi経由で認証結果を取得して、認証されない場合、postを発生させずエラーメッセージの表示処理のみをjavascriptから行いたいと思っています。
 
 html
-```
+```html
 <form action="/Test/Main" method="post">
 <table>
  <tr>
 
 
 angularJS
-```
+```javascript
     $scope.DoAuthenticate = function() {
      $http({
       method : 'GET',
タグ

ASP.NET MVCのsubmit時のpostをjavascriptで制御する

ASP.NET MVC + angularJSで開発をしています。
ログイン処理時にまずapi経由で認証結果を取得して、認証されない場合、postを発生させずエラーメッセージの表示処理のみをjavascriptから行いたいと思っています。

html

<form action="/Test/Main" method="post">
<table>
 <tr>
  <th>ユーザーID</th>
  <td><input type="text" name="UserCode" ng-model="UserCode" /></td>
 </tr>
 <tr>
  <th>パスワード</th>
  <td><input type="text" name="UserPassword" ng-model="UserPassword" /></td>
 </tr>
 <tr>
  <td colspan="2" style="text-align:right;">
    <input type="submit" value="ログイン" name="LoginSubmit" ng-click="DoAuthenticate()" /><br />
    {{loginResult}}<br />
  </td>
 </tr>
</table>
</form>

angularJS

    $scope.DoAuthenticate = function() {
     $http({
      method : 'GET',
      url : "認証用のurl"
     }).success(function(data, status, headers, config) {
      if (!data) {
       $scope.loginResult = "ログインに失敗しました";
      }
     }).error(function(data, status, headers, config) {
      console.log(status);
     });
    };

if (!data)のとき、postが発生すると画面の再描画が行われてしまい、$scope.loginResultのメッセージも消えてしまいます。
そもそも通信が非同期なので難しいのかもしれないと思ってはいるのですが、なにかいい方法はないでしょうか。

ASP.NET MVC + angularJSで開発をしています。
ログイン処理時にまずapi経由で認証結果を取得して、認証されない場合、postを発生させずエラーメッセージの表示処理のみをjavascriptから行いたいと思っています。

html
```html
<form action="/Test/Main" method="post">
<table>
 <tr>
  <th>ユーザーID</th>
  <td><input type="text" name="UserCode" ng-model="UserCode" /></td>
 </tr>
 <tr>
  <th>パスワード</th>
  <td><input type="text" name="UserPassword" ng-model="UserPassword" /></td>
 </tr>
 <tr>
  <td colspan="2" style="text-align:right;">
    <input type="submit" value="ログイン" name="LoginSubmit" ng-click="DoAuthenticate()" /><br />
    {{loginResult}}<br />
  </td>
 </tr>
</table>
</form>
```


angularJS
```javascript
    $scope.DoAuthenticate = function() {
     $http({
      method : 'GET',
      url : "認証用のurl"
     }).success(function(data, status, headers, config) {
      if (!data) {
       $scope.loginResult = "ログインに失敗しました";
      }
     }).error(function(data, status, headers, config) {
      console.log(status);
     });
    };

```

if (!data)のとき、postが発生すると画面の再描画が行われてしまい、$scope.loginResultのメッセージも消えてしまいます。
そもそも通信が非同期なので難しいのかもしれないと思ってはいるのですが、なにかいい方法はないでしょうか。

質問を投稿

ASP.NET MVCのsubmit時のpostをjavascriptで制御する

ASP.NET MVC + angularJSで開発をしています。
ログイン処理時にまずapi経由で認証結果を取得して、認証されない場合、postを発生させずエラーメッセージの表示処理のみをjavascriptから行いたいと思っています。

html

<form action="/Test/Main" method="post">
<table>
 <tr>
  <th>ユーザーID</th>
  <td><input type="text" name="UserCode" ng-model="UserCode" /></td>
 </tr>
 <tr>
  <th>パスワード</th>
  <td><input type="text" name="UserPassword" ng-model="UserPassword" /></td>
 </tr>
 <tr>
  <td colspan="2" style="text-align:right;">
    <input type="submit" value="ログイン" name="LoginSubmit" ng-click="DoAuthenticate()" /><br />
    {{loginResult}}<br />
  </td>
 </tr>
</table>
</form>

angularJS

    $scope.DoAuthenticate = function() {
     $http({
      method : 'GET',
      url : "認証用のurl"
     }).success(function(data, status, headers, config) {
      if (!data) {
       $scope.loginResult = "ログインに失敗しました";
      }
     }).error(function(data, status, headers, config) {
      console.log(status);
     });
    };

if (!data)のとき、postが発生すると画面の再描画が行われてしまい、$scope.loginResultのメッセージも消えてしまいます。
そもそも通信が非同期なので難しいのかもしれないと思ってはいるのですが、なにかいい方法はないでしょうか。

ASP.NET MVC + angularJSで開発をしています。
ログイン処理時にまずapi経由で認証結果を取得して、認証されない場合、postを発生させずエラーメッセージの表示処理のみをjavascriptから行いたいと思っています。

html
```
<form action="/Test/Main" method="post">
<table>
 <tr>
  <th>ユーザーID</th>
  <td><input type="text" name="UserCode" ng-model="UserCode" /></td>
 </tr>
 <tr>
  <th>パスワード</th>
  <td><input type="text" name="UserPassword" ng-model="UserPassword" /></td>
 </tr>
 <tr>
  <td colspan="2" style="text-align:right;">
    <input type="submit" value="ログイン" name="LoginSubmit" ng-click="DoAuthenticate()" /><br />
    {{loginResult}}<br />
  </td>
 </tr>
</table>
</form>
```


angularJS
```
    $scope.DoAuthenticate = function() {
     $http({
      method : 'GET',
      url : "認証用のurl"
     }).success(function(data, status, headers, config) {
      if (!data) {
       $scope.loginResult = "ログインに失敗しました";
      }
     }).error(function(data, status, headers, config) {
      console.log(status);
     });
    };

```

if (!data)のとき、postが発生すると画面の再描画が行われてしまい、$scope.loginResultのメッセージも消えてしまいます。
そもそも通信が非同期なので難しいのかもしれないと思ってはいるのですが、なにかいい方法はないでしょうか。