2

我在所有浏览器中都使用幻影文本,它工作正常,但在 ie9 或 ie8 中却不行。第 1 步加载页面 第 2 步输入提交验证消息第 3 步 - 将光标放在特定字段上的幻影文本不会被删除。(没有输入提交按钮光标放置在特定字段上的幻影文本消失)。

我的代码如下。

<?php
echo $this->Form->input('service_address1', array(
    'id'        => 'address1',
    'div'       => false,
    'label'     => false, 
    'tabindex'  => '0',
    'class'     => 'form-bg',
    'maxlength' => 250,
    'value'     => 'Address',
    'onblur'    => "if(this.value=='') { this.value='Address'; }",
    "onfocus"   => "if(this.value == 'Address') { this.value = ''; }"
));
?>    
4

2 回答 2

1

你的代码很好。请检查同一页面中其他代码中的任何问题。如果您使用任何脚本函数,问题可能来自您的脚本代码。

  1. 在 IE8 和 IE9 PressF12中,它会显示控制台选项
  2. 刷新您的页面并检查页面上是否显示任何问题
  3. 继续提交

如果脚本中有任何错误或错误,它将显示在控制台上。

于 2013-06-19T11:48:11.160 回答
0

这是 IE9 中的一个错误,并且在许多地方也有报告。每当一个表动态呈现多行时。IE 9 会创建一些不需要的重影单元并干扰 UI 的对齐。

因此,为了在渲染时防止 html 表格中出现不需要的幽灵单元格,只需使用这个有用的脚本

function removeWhiteSpaces()
{
   $('#myTable').html(function(i, el) {
      return el.replace(/>\s*</g, '><');
   });
}

当页面加载时您应该调用这个 javascript 函数(即onload 事件

于 2016-06-16T11:44:15.927 回答