簡體   English   中英

如何在以下場景中禁用AngularJS中的提交?

[英]How to disable submit in AngularJS in following scenario?

我在AngularJS中禁用HTML表單中的“ 提交”按鈕時遇到了一些麻煩。

場景:

  • 我正在從HTML選擇框中選擇某個進程, 即。 下拉列表
  • 一旦我從中選擇了一些條目,下部會自動填充所需的表格,該表格同樣具有一組輸入
  • 填寫這些值后,您可以提交取消請求

條件:
列表中有一個進程,我需要上傳一個或多個文件以及其他輸入參數。 為此,我使用兩步法,首先使用按鈕選擇文件,然后使用另一個按鈕上傳文件。 單擊此按鈕可進行REST調用,並將文件發送到所需目標。
我正在使用https://github.com/danialfarid/ng-file-upload中的 ng-file-upload指令來完成此任務。

問題:
我最初使用ng-disabled來禁用提交按鈕,條件是填充所有必需的輸入元素並傳遞所有輸入驗證 現在,當我處於需要上載文件的用例時,會出現問題。 當我選擇一個文件並上傳它時,HTML將該元素視為空,因為該文件已經發送到其目標,因此驗證失敗所有必需的輸入元素都被填充 如果我刪除此驗證,即使強制字段為空,我的表單也會提交。

那么在這種情況下我可以做什么來禁用我的提交按鈕?

創建一個布爾變量,就像@ShashankVivek所說的那樣。

如果文件上傳了$ scope.uploaded = true。

所以你的按鈕應該是這樣的

<button data-ng-disabled="!form.valid && !uploaded">Submit</button>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM