官术网_书友最值得收藏!

Putting custom validation in the e-mail field

This recipe describes how to make use of the e-mail form field provided by Sencha Touch and how to validate the value entered into it to find out whether the entered e-mail passes the validation rule or not.

Getting ready

Make sure that you have set up your development environment by following the recipes outlined in Chapter 1.

Make sure that you have followed the Getting your form ready with FormPanel recipe in this chapter.

How to do it...

Carry out the following steps:

  1. Copy ch02_01.js to ch02_03.js.
  2. Open a new file named ch02_03.js and replace the definition of formBase with the following code:
    var formBase = {
      items: [{
        xtype: 'emailfield',
        name : 'email',
        label: 'Email',
        placeHolder: 'you@sencha.com',
        useClearIcon: true,
        listeners: {
          blur: function(thisTxt, eventObj) {
            var val = thisTxt.getValue();
    
            //validate using the pattern
            if (val.search("[a-c]+@[a-z]+[.][a-z]+") == -1)
              Ext.Msg.alert("Error", "Invalid e-mail address!!");
            else
              Ext.Msg.alert("Info", "Valid e-mail address!!");
          }
        }
      }]
    };
  3. Include ch02_03.js in place of ch02_02.js in index.html.
  4. Deploy and access the application in the browser.

How it works...

The e-mail field can be constructed by using the Ext.form.Email class instance or by using the xtype: emailfield. The e-mail form field implements HTML5 <input> with type="email." However, as with the search field, the implementation is very limited. For example, the HTML5 e-mail field allows us to specify a regular expression pattern which can be used to validate the value entered in the field.

See also

  • The recipe named Setting up the Android-based development environment in Chapter 1
  • The recipe named Setting up the iOS-based development environment in Chapter 1
  • The recipe named Setting up the Blackberry-based development environment in Chapter 1
  • The recipe named Setting up the browser-based development environment in Chapter 1
  • The recipe named Setting up the production environment in Chapter 1
  • The recipe named Getting your form ready with FormPanel in this chapter
主站蜘蛛池模板: 鄱阳县| 沙洋县| 东城区| 滁州市| 富裕县| 美姑县| 嘉黎县| 剑河县| 随州市| 阿巴嘎旗| 昌图县| 呼图壁县| 青川县| 翁源县| 陵川县| 丰都县| 繁峙县| 雷州市| 乐至县| 保山市| 武平县| 吴忠市| 芜湖市| 盐津县| 新竹县| 张家港市| 平乐县| 洛川县| 顺平县| 华容县| 徐汇区| 彭山县| 乌鲁木齐县| 宁乡县| 句容市| 余姚市| 土默特左旗| 应城市| 靖安县| 武城县| 永泰县|