1

我正在使用 Bootstrap 推荐的电话表单助手来验证文本框中的电话号码。验证按预期工作,但我在设置文本框的默认值时遇到了一些问题。这是我使用的标记:

<input type = "text" class = "bfh-phone" data-format = "(ddd) ddd-dddd" 
id = "phone" value = <?php echo $phone; ?>>

我的 PHP $phone 变量是 10 位非格式化数字

$phone = 1234567890;

不幸的是,上面没有显示为我的输入框的默认值。如果我从输入元素中删除“类”和“数据格式”属性,则默认值会按预期显示。

我尝试按照 data-format 属性的行格式化我的 $phone 变量。

IE:

$phone = (123) 456-7890;

但没有骰子。在这种情况下,如何使用 PHP 变量设置默认值?

4

2 回答 2

6

看起来必须在输入字段中设置“值”属性以及“数据编号”属性,才能在字段中实际显示数字。一个示例可以在 bootstrap formhelper 网站上看到 - http://vincentlamanna.com/BootstrapFormHelpers/phone.html - 在显示值时的 <span> 标记内。

于 2013-05-27T14:46:38.617 回答
0

您也可以通过稍微修改插件来解决这个问题。

打开bootstrap-formhelpers-phone.js文件,转到第 175 行并插入这行代码:

 if ($phone.val() != "") $phone.data("number", $phone.val())

插件中的整个代码块是:

 /* PHONE DATA-API
  * ============== */

  $(window).on('load', function () {
    $('form input[type="text"].bfh-phone, form input[type="tel"].bfh-phone, span.bfh-phone').each(function () {
      var $phone = $(this)
      if ($phone.val() != "") $phone.data("number", $phone.val())
      $phone.bfhphone($phone.data())
    })
  })
于 2013-08-14T22:29:52.353 回答