onChange 이벤트를 트리거하는 inputText 필드에서 typeahead가 활성화되었습니다. 페이지가 일정 기간 동안 새로 고쳐지지 않으면 테스트가 제대로 작동하지 않습니다 (테스트에서는 1 시간 후에 작동이 멈추지 만 그 이하 일 수 있습니다). 페이지를 새로 고침하면 문제가 완전히 해결됩니다.inputText onchange 이벤트가 비활성 후 호출되지 않음
inputText 필드의 코드는 다음과 같습니다.
<xp:inputText id="quickSelectEntry" style="width:170px;">
<xp:this.dojoAttributes>
<xp:dojoAttribute name="placeHolder" value="Enter name">
</xp:dojoAttribute>
</xp:this.dojoAttributes>
<xp:typeAhead mode="none" minChars="2" ignoreCase="true"
var="searchValue" valueMarkup="true">
<xp:this.valueList><![CDATA[#{javascript:return nameTypeAhead(searchValue)}]]></xp:this.valueList>
</xp:typeAhead>
<xp:eventHandler event="onchange" submit="true"
refreshMode="norefresh">
<xp:this.action>
<xp:actionGroup>
<xp:executeScript>
<xp:this.script><![CDATA[#{javascript:var searchVal:string = getComponent("quickSelectEntry").getValue();
if (searchVal.substr(0,1).equals("?")) {
context.redirectToPage("xCheckSecurityGroup.xsp?group=" + searchVal.substr(1));
return false;
} else {
var doc:NotesDocument = quickLookupView.getDocumentByKey(searchVal, true);
if (null != doc) {
viewScope.lookupKey = doc.getUniversalID();
viewScope.lookupForm = doc.getItemValueString("form");
return true;
} else {
viewScope.lookupKey = ""
viewScope.lookupForm = ""
return false;
}
}
]]></xp:this.script>
</xp:executeScript>
<xp:actionGroup>
<xp:this.condition><![CDATA[#{javascript:viewScope.lookupKey != ""}]]></xp:this.condition>
<xp:openPage target="openDocument"
documentId="#{javascript:return viewScope.lookupKey}">
<xp:this.name><![CDATA[#{javascript:return "x" + viewScope.lookupForm + ".xsp" }]]></xp:this.name>
</xp:openPage>
</xp:actionGroup>
</xp:actionGroup>
</xp:this.action>
</xp:eventHandler>
지금까지 나는 전체에 없음에서 선행 입력 모드를 설정 한, 아니 기쁨으로 포함하는 패널의 시간 제한 부분 새로 고침을 수행 시도했습니다. 차이 없음.
10 분마다 페이지를 새로 고치는 것 이외에도 문제를 일으키는 다른 것이 있습니까? FYI 실제의 선구자가 올바르게 작동하고 있습니다. 즉, 발사를 멈추는 onchange 이벤트입니다.
keepSessionAlive가 작동하지 않으면 아래의 Howard가 설명한대로 강제 새로 고침과 결합 된 다음 옵션이됩니다. – ajcooper