我创建了一个JSF网页,我想在这里对焦点进行验证,即如果用户未填充文本字段,则文本字段的边框颜色应更改为红色。我正在对Change事件调用highlightBorder((方法,但它不起作用。请建议我正确的方式,我是JSF部分的新手。
xhtml代码
<div class="control-row">
<div class="table">
<div class="cell cell-label1">
<h:outputLabel value="#{pprmsgs.specialist_surname}">
<font style="color: red">*</font>
</h:outputLabel>
</div>
<div class="cell">
<h:inputText styleClass="p-name-demo exempt nameExempt"
id="demoSurNameId" tabindex="4"
value="#{specialistViewManager.specViewBean.givenName}"
onchange="initialCaps(this);setInputDirty();highlightBorder(this);"
maxlength="50" autocomplete="off">
<p:ajax event="blur" global="false"></p:ajax>
</h:inputText>
</div>
</div>
</div>
Script.js:在这个文件中,我实现了方法highlightBorder((来更改输入框的边框颜色
function highlightBorder(Stringobj)
{
if(Stringobj.value == "")
{
$(this).css({
"border":"2px solid red"
});
}
else
{
$(this).css({
"border":""
});
}
}
尝试onkeyup事件而不是onchange。
<input type="text" onkeyup="myFunction()">