hifive / hifivemain

main repository
http://www.htmlhifive.com/
Other
40 stars 10 forks source link

h5.ui.FormController input要素にtitle属性が指定されているとbsBalloonの表示がおかしくなる #559

Closed mtakeuchi closed 8 years ago

mtakeuchi commented 8 years ago

Bootstrap ver 3.0から、title属性の値をメッセージとして表示するよう仕様が変更されているため、 BootStrap 3.0以降を使用して、title属性が指定されている入力フィールドにバリデーションエラーを表示させると、一回目のバルーン表示がtitle属性に指定した値がバルーンに表示されてしまう。

参考サイト https://atstyle.biz/blog/archives/2013/07/13/0033/

再現コード

<form id="form1">
  <input type="text" name="field1" title="hogehoge">
  <input type="button" value="確認" id="btn1">
</form>
h5.core.controller('body', {
  formController: h5.ui.FormController,
  __meta: {
    formController: {
      rootElement: '#form1'
    }
  },
  __name: 'PageController2',
  __ready: function() {
    this.formController.addOutput('bsBalloon');
    this.formController.setSetting({
      property: {
        field1: {
          displayName: '名前',
          message: '{displayName}が未入力です。'
        }
      }
    });

    this.formController.addRule({
      field1: {
        required: true
      }
    });
  },
  '#btn1 click': function() {
    this.formController.validate();
  }
});

実行結果 result