首頁 web前端 js教程 JavaScript框架(xmlplus)元件的介紹(三)文字方塊(TextBox)

JavaScript框架(xmlplus)元件的介紹(三)文字方塊(TextBox)

May 04, 2017 am 10:21 AM
文字方塊

xmlplus 是一個JavaScript框架,用於快速開發前後端專案。這篇文章主要介紹了xmlplus元件設計系列之文本框,具有一定的參考價值,有興趣的小夥伴們可以參考一下

文字框是頁面中最常用的輸入元件,它的預設使用方式如下:


當然,這裡的`type='text' 可以略不寫。大部分情況下,使用預設的文字方塊作為輸入元件是沒什麼問題的,但在具體的專案中,難免會有功能擴展的需求。這裡僅以如何增加文字方塊資料的格式化輸入輸出能力為例說明如何擴充原生的文字方塊元件。除了本章的內容,你也可以參考官方文件中的 參數映射 一章。

目標元件的功能分析

對於原生的文字框,我們得到的值是文字類型的,就像下面的範例所展示的:

Example: {
  xml: "<input id=&#39;input&#39; value=&#39;text&#39;/>",
  fun: function (sys, items, opts) {
    console.log(typeof this.prop("value")); // string
  }
}
登入後複製

如果需要其它類型的數值,就需要對取得到的資料進行格式化操作。例如,如果需要整數型數,就需要用到 parseInt 函數;如果需要浮點型數,就需要用到 parseFloat 函數。如果我們能夠將格式化資料的操作封裝起來,那使用起來一定會相當的方便。為了明確我們的預期,不妨先給出目標元件的使用範例。

Index: {
  xml: "<p id=&#39;index&#39;>\
       <TextBox id=&#39;foo&#39;/>\
       <TextBox id=&#39;bar&#39; format=&#39;int&#39;/>\
     </p>",
  fun: function (sys, items, opts) {
    items.foo.value = "hello, world";
    items.bar.value = 27.1828;
    console.log("foo", items.foo.value);
    console.log("bar", items.bar.value);
  }
}
登入後複製

此範例實例化了兩個元件 Input。元件 Input 允許接收一個 format 參數作為其靜態介面輸入,並提供一個屬性 value 作為其動態輸入輸出介面。 format 參數有三種可能的值:string (預設)、int 以及 float。這三種值分別對應三種資料型別字串型、整數型和浮點型。屬性 value 根據 format 的值來進行格式化輸入輸出。範例的輸出結果應該會是下面這樣子:

hello, world
227

目標元件的實作

##為了完成上面的目標元件,我們先給一個文字方塊的元件框架。

TextBox: {
  xml: "<input id=&#39;input&#39; type=&#39;text&#39;/>",
  opt: { format: "string" },
  fun: function (sys, items, opts) {
    var parse = {"int": parseInt, "float": parseFloat, "string": String}[opts.format];
    function getValue() {
      // 这里需要获取 input 的值并根据 opts.format 值选择适当的格式化函数,
    }
    function setValue(value) {
      // 这里需要根据 opts.format 值选择适当的格式化函数,对 value 进行格式化后同去赋值
    }
    return Object.defineProperty({}, "value", { get: getValue, set: setValue });
  }
}
登入後複製

上面關鍵的地方在於格式化函數的選取,為了簡化,我們採用的是表格

查詢方式。在組件初始化階段該函數就已經準備就緒了,上述的 parse 函數即所需的格式化函數。不過要注意的是,該組件的格式化函數類型在組件初始化時就固定了。如果需要可變的格式化函數,你需要對元件做些修正。好了,下面可以給出完整的文字框組件了。

TextBox: {
  xml: "<input id=&#39;input&#39; type=&#39;text&#39;/>",
  opt: { format: &#39;string&#39; },
  map: { attrs: { input: "disabled value placeholder readonly" } },
  fun: function (sys, items, opts) {
    var parse = {"int": parseInt, "float": parseFloat, "string": String}[opts.format];
    function getValue() {
      return parse(sys.input.prop("value"));
    }
    function setValue(value) {
      sys.input.prop("value", parse(value));
    }
    return Object.defineProperty({}, "value", { get: getValue, set: setValue });
  }
}
登入後複製
另外請注意,上面元件添加了部分屬性映射的內容,這可以在具體的項目中根據需要進行增刪。

本系列文章是基於 xmlplus 框架。如果你對 xmlplus 沒有太多了解,可以造訪 www.xmlplus.cn。這裡有詳盡的入門文件可供參考。

以上是JavaScript框架(xmlplus)元件的介紹(三)文字方塊(TextBox)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

OneNote如何設定圖片為背景 OneNote如何設定圖片為背景 May 14, 2023 am 11:16 AM

Onenote是Microsoft提供的最好的筆記工具之一。結合Outlook和MSTeams,Onenote可以成為提高工作和個人創意工作效率的強大組合。我們必須以不同的格式做筆記,這可能不僅僅是把事情寫下來。有時我們需要從不同來源複製圖像並在日常工作中進行一些編輯。如果知道如何應用更改,則貼上在Onenote上的圖像可以發揮很大作用。您在使用Onenote時是否遇到過貼在Onenote上的圖像無法讓您輕鬆工作的問題?本文將著重於在Onenote上有效地使用圖像。我們可

如何隱藏文字直到在 Powerpoint 中單擊 如何隱藏文字直到在 Powerpoint 中單擊 Apr 14, 2023 pm 04:40 PM

如何在 PowerPoint 中的任何點擊之前隱藏文本如果您希望在單擊 PowerPoint 幻燈片上的任意位置時顯示文本,那麼設置起來既快速又容易。若要在 PowerPoint 中按一下任何按鈕之前隱藏文字:開啟您的 PowerPoint 文檔,然後按一下「插入 」功能表。點選新幻燈片。選擇空白或其他預設之一。仍然在插入選單中,按一下文字方塊。在投影片上拖出一個文字方塊。點擊文字方塊並輸入您

如何在 Word 中製作行事曆 如何在 Word 中製作行事曆 Apr 25, 2023 pm 02:34 PM

如何使用表格在Word中製作日曆如果您想建立一個完全符合您的規範的日曆,您可以使用Word中的表格從頭開始做所有事情。這使您可以為日曆設計所需的確切佈局。在Word中使用表格建立行事曆:開啟一個新的Word文件。按Enter幾次,將遊標向下移動到頁面。點選插入 選單。在功能區中,按一下表格圖示。點擊並按住左上角的方塊並拖曳出一個7×6的表格。在第一行填寫星期幾。使用另一個日曆作為參考填寫月份中的日期。反白顯示當前月份以外的任何日期。在主選單中,點擊文字顏色圖示並選擇灰色。對當前月份以

html文字方塊類型有哪些 html文字方塊類型有哪些 Oct 12, 2023 pm 05:38 PM

html文字方塊類型有單行文字方塊、密碼文字方塊、數字文字方塊、日期文字方塊、時間文字方塊、檔案上傳文字方塊、多行文字方塊等等。詳細介紹:1、單行文本框是最常見的文本框類型,用於接受單行文本輸入,用戶可以在文本框中輸入任意文本,例如用戶名、密碼、電子郵件地址等;2、密碼文本框用於接受密碼輸入,使用者在輸入密碼時,文字方塊中的內容會被隱藏,以保護使用者的隱私;3、數位文字方塊等等。

如何在HTML文字方塊中新增換行符號? 如何在HTML文字方塊中新增換行符號? Sep 04, 2023 am 11:05 AM

若要為HTML文字區域新增換行符,我們可以使用HTML換行符號標籤在任意位置插入換行符。或者,我們也可以使用CSS屬性「white-space:pre-wrap」自動為文字新增換行符。當在文字區域中顯示預先格式化的文字時,這特別有用。因此,我們來討論一下添加換行符的方法。方法在HTML中建立一個文字區域並為其指派一個id。建立一個按鈕,按一下該按鈕將使用換行符號分割文字區域的文字。現在建立將文字分成換行符的函數。此函數的程式碼為-functionreplacePeriodsWithLineBreaks()

文字框邊框怎麼設定透明 文字框邊框怎麼設定透明 Jul 28, 2023 am 10:05 AM

文字框邊框設定透明方法:1、開啟文檔,選取已插入的文字框,滑鼠右鍵選擇「設定物件格式」;2、在右側彈出框,選擇「形狀選項」—「填滿與線條」—「透明度」;3、依需求調整透明度即可。

如何編寫HTML滾動條文字方塊程式碼 如何編寫HTML滾動條文字方塊程式碼 Feb 19, 2024 pm 07:38 PM

標題:如何寫出帶有捲軸的HTML文字方塊程式碼HTML中的文字方塊是常用的使用者輸入控制項之一,在某些情況下,文字內容過長時會導致文字方塊顯示不完整。這時,我們可以透過新增捲軸來讓文字方塊支援滾動查看。本文將詳細介紹如何撰寫具有捲軸效果的HTML文字方塊程式碼,並給出具體的程式碼範例。一、使用textarea元素建立文字方塊在HTML中,我們使用textarea元素來建立文字框

文字方塊邊框怎麼設定顏色 文字方塊邊框怎麼設定顏色 Jul 28, 2023 am 10:08 AM

設定文字方塊邊框顏色的方法:1、選取要新增邊框的文字或段落;2、在「開始」標籤的「段落」或「字型」群組中,按一下「邊框」按鈕;3、從下拉式選單中選擇邊框樣式;4、點選「邊框顏色」按鈕,在彈出的選單中選擇您想要的顏色;5、點選「確定」按鈕以套用邊框樣式和顏色。

See all articles