У меня есть несколько текстовых полей в моем JSP. Мое требование (для одного из текстовых полей) состоит в том, чтобы проверить длину данных, введенных пользователем в нее, если она меньше, чем Макс. Длина, мне нужно установить префикс этого количества нулей и сделать его максимально длинным.
У меня был некоторый существующий код с существующей функциональностью.
Я только что добавил некоторую часть в событие onblur. Как видно из приведенного ниже кода, я попытался установить значение из переменной 'zrs' при возникновении onblur.
Переменная 'zrs', в свою очередь, устанавливается путем вызова функции 'zeros ()'.
Я вставил приведенный ниже код для функции 'нулей ()' для справки.
Стоит отметить, что когда я развертываю свой код на сервере Weblogic, он работает нормально. Он даже дает мне правильные результаты, а также оповещения, добавленные как часть функции нулей.
Но когда я развертываю то же самое на JBoss, он также не выдает никаких предупреждений.
Я использую Internet Explorer для обоих приложений, построенных на Web Logic и JBoss.
Может кто-нибудь, пожалуйста, посмотрите на это и направьте ??? Большое спасибо!
<c:choose>
<c:when test="${dto.loadpage == true}">
<input type="hidden" name="tmpValue[<c:out value="${indexDto}"/>]" value="<c:out value="${dto.valeurSaisiForm}"/>"/>
<c:set var="prop" value="calculer(this,${dto.valMaxChamp},'${nomDuChamp}',${indexDto});"/>
<c:set var="zrs" value ="zeros(this,${dto.valMaxChamp},'${nomDuChamp}',${indexDto});"/>
<input <c:out value="${optionChampInterdit}"/> type="text" name="dto[<c:out value="${indexDto}"/>].valeurSaisiForm" onfocus="change_classe_byId(this,'on');"
onclick="SetSelectedControl(this,'<%= nomDuChamp %>');" style="<%=style%>" maxlength="<%=max%>"
onblur="<c:out value="${zrs}"/>;change_classe_byId(this,'off');" onchange="<c:out value="${prop}"/>" onkeyup="<c:out value="${prop}"/>" class="<c:out value="${styleClass}"/>" value="<c:out value="${dto.valeurSaisiForm}"/>" />
</c:when>
<c:otherwise>
<input <c:out value="${optionChampInterdit}"/> type="text" id="<c:out value="${dto.nomChamp}"/>" name="dto[<c:out value="${indexDto}"/>].valeurSaisiForm" onfocus="change_classe_byId(this,'on');"
onclick="SetSelectedControl(this,'<%= nomDuChamp %>');" style="<%=style%>" maxlength="<%=max%>"
onblur="<c:out value="${zrs}"/>;change_classe_byId(this,'off');" class="<c:out value="${styleClass}"/>" value="<c:out value="${dto.valeurSaisiForm}"/>" />
</c:otherwise>
</c:choose>
Функции:
function calculer(obj, max,field, indexTmp){
var nameTmp = "tmpValue["+indexTmp+"]";
if(obj!=null && ((obj.value.length== max) || (obj.value.length== 0)) && this.document.Bean.elements[nameTmp]!=null &&
this.document.Bean.elements[nameTmp].value!=obj.value){
this.document.Bean.elements[nameTmp].value = obj.value;
setTemplate(field);
}
}
function zeros(obj, max, field,indexTmp)
{
alert("Inside Zeros - onBlur Called----Current Value is "+obj.value);
var nameTmp = "tmpValue["+indexTmp+"]";
if (field.substring(0,8) == "PDPMODEL")
{
alert("Field is PDPMODEL");
if(obj!=null && obj.value.length < max && obj.value.length != 0 && this.document.Bean.elements[nameTmp]!=null)
{
alert("Zeros Prefix Needed");
var prfx="";
for(var cnt= obj.value.length; cnt < max ; cnt++)
{
prfx=prfx+"0";
}
obj.value = prfx + obj.value;
alert("New value is "+obj.value);
this.document.Bean.elements[nameTmp].value = obj.value;
setTemplate(field);
}
change_classe_byId(obj,'off');
}
change_classe_byId(obj,'off');
}