[英]Concatenate (append) one input field value to another field in angular form
[英]Form Field Input One After Another
我正在創建一個表單向導,引導用戶瀏覽每個表單元素,並顯示一個描述每個元素的工具提示。 我想要完成的是:
我的工具提示正確顯示,點擊后消失。 我不知道在 JavaScript 代碼中怎么說:“用戶是否在當前字段中輸入了數據並單擊了工具提示以前進?好的,然后繼續下一個字段,直到我們到達提交按鈕。否則,就留在當前領域。”
這是我的代碼:
function prepareForm() {
var inputs = document.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++){
if (i !== 0){
inputs[i].disabled = "disabled";
}
// Make sure the tooltip tag is present...
if (inputs[i].parentNode.getElementsByTagName("span")[0]) {
inputs[i].onfocus = function () {
this.parentNode.getElementsByTagName("span")[0].style.display = "inline";
}
// When the user has entered information and clicked the tooltip, continue onto the next field.
inputs[i].parentNode.getElementsByTagName("span")[0].onclick = function () {
this.parentNode.getElementsByTagName("span")[0].style.display = "none";
}
}
}
}
window.onload = prepareForm;
我嘗試在 onclick function 中輸入其他邏輯,但由於它隨時執行,我無法訪問輸入數組。 任何關於我如何實現這一點的幫助將不勝感激。 謝謝!
正如你所說,你對 jQuery 感到滿意,我為你創建了這個小提琴。因為我不知道你是如何顯示工具提示的,如果我的不是你正在使用的,請告訴我。這個例子可以幫助你開始和添加您自己的要求。
我不會推薦這個。 您正在更改 forms 的默認行為......對最終用戶幾乎沒有好處。
此外,您還強制用戶在單擊非表單字段元素的字段之間進行額外的工作。
這使基本可用性失敗,只會使用戶感到困惑。 附帶說明一下,如果你還沒有讀過 Steve Krug 的“ Don't Make Me Think ”,請盡早查看——它充滿了關於為什么“發明”新的 UI 概念通常是一個令人大開眼界的細節。餿主意。
更新:所以我認為唯一公平的是,我根據提供的有關此表格的信息提供不同的建議,該表格非常適合手持練習。
因此,基於逐個字段控制輸入的需要,我認為以可用的方式這樣做的唯一方法是將其作為向導提供,每頁一個字段。 這樣做還有一些額外的好處,因為如果在早期步驟中做出決定不需要未來步驟,則可以完全省略它。
因此,我設想了一個表單,其中每個步驟的底部都有一個“上一個/下一個”按鈕(如果適用……例如,第 1 步將沒有上一個)。 Next 按鈕將開始禁用,並且僅在用戶將輸入輸入該頁面上的字段時才啟用。 顯示每個步驟時,應自動將焦點放在該字段中,以便更快地進入。
如果可能,可以添加進度條或完成百分比指示器,讓用戶更好地了解剩余的步驟數。
優點:
缺點:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.