【问题标题】:typeahead function prevent editbox styling预输入功能阻止编辑框样式
【发布时间】:2014-03-25 15:57:34
【问题描述】:

我的 xPage 上有两个编辑框。 第二个启用了预输入。 我想在 onFocus 事件上制作编辑框背景,例如黄色的... 我是这样做的:

var fldObj = dojo.byId("myEditBox");
if (!fldObj) {
    fldObj = dojo.query("[id$=':myEditBox']");
    if (fldObj) {
        fldObj = fldObj[0];
    }
}
if (fldObj != null) {
    fldObj.style.background="yellow";
}

它适用于第一个编辑框,但不适用于启用预输入的编辑框。 有什么建议吗?

谢谢

【问题讨论】:

  • 编辑框的ID是什么?请从您的 XPage 添加更多代码。
  • ID 是 myEditBox... 正如我所说,它适用于第一个编辑框,但不适用于仅启用 typeAhead 的第二个编辑框
  • 您的代码只是更改找到的第一个元素 (fldObj = fldObj[0];) 如果您有两个元素,则永远不会触及第二个元素。
  • 再一次,正如我所说,它在不启用 typeAhead 的情况下也能正常工作......对不起,如果我让你感到困惑 - 它是 xPage 项目
  • 我没有水晶球。该代码在测试页面上运行良好

标签: xpages type-ahead


【解决方案1】:

简单的 CSS 可以解决问题。您的问题可能是由 dojo CSS 样式引起的。添加 !important 覆盖其他继承的 !important 样式。适合我的编辑框,带和不带预输入。

.xspInputFieldEditBox:focus, .lotusui .dijitTextBox input:focus, .xspComboBox:focus
{
  font-weight: bold;
  background-color: yellow !important;
  background: yellow !important;

} 

http://www.w3schools.com/cssref/sel_focus.asp

【讨论】:

  • 在 oneUI 应用程序中测试。
  • 非常抱歉 Frantisek 再次给您带来麻烦.. 如何对 dijitCombobox 做同样的事情.. 我试过 .xspInputText:focus, .lotusui .dijitComboBox input:focus 没有成功... 谢谢
  • 正如 Frantisek 所说,您应该接受答案。参与stackoverflow的重要部分
猜你喜欢
  • 2011-03-01
  • 1970-01-01
  • 2016-02-09
  • 1970-01-01
  • 1970-01-01
  • 2020-05-03
  • 2021-12-30
  • 1970-01-01
相关资源
最近更新 更多