본질적으로 단지 데이터의 행과 열인 JSF 페이지가 있습니다. 각 행의 데이터는 클래스 인스턴스의 속성에서 가져옵니다. 각 행에 클릭하면 해당 행의 데이터를 새로 고치는 백업 빈 메서드가 호출되는 링크가 있습니다. 행은 그 아래에있는 행 그룹을 나타내는 표제로 구분됩니다. 제목 아래에 모든 행을 새로 고칠 수 있도록 제목도 링크로 만들고 싶습니다. 이런 자바 스크립트를 사용해 보았습니다.요소 그룹 새로 고침
function refreshGroup(){
var obj1 = document.getElementById("refresh0:link0");
var obj2 = document.getElementById("refresh1:link1");
window.open(obj1);
window.open(obj2);
};
방금 새 탭이 열렸습니다. 사용자가 각 링크를 클릭 한 것처럼 작동하도록 할 수있는 방법이 있습니까? 이는 JSF가 백킹 빈을 호출하는 링크의 모습입니다 :
<h:form id="refresh#{loop.index}" >
<h:commandLink id="link#{loop.index}" value="#{a.status}" >
<f:ajax listener="#{a.getCheckAppMonitor}"
render=":errs#{loop.index} :refresh#{loop.index} :errs_#{i+1}"
onevent="refreshMoreLessLinks" />
</h:commandLink> <img id="img_#{loop.index}"
class="hidden"
src="resources/images/ajax-loader.gif"/>
</h:form>
이
는 모든c:foreach
루프의 안에 중첩된다.
헤더 링크는 다음과 같습니다
<h3><a href="javascript:refreshGroup();">Group 1</a></h3>
편집 : 그것은 내가 다시 commandLink
그래서 렌더링 할 수있는 모든 것을 만들 필요가 저에게 발생
. 나는이 한 :
<h:form id="header1" >
<h:commandLink class="link" value="Group 1" >
<f:ajax listener="#{appBean.refresh}" render="@all" />
</h:commandLink>
</h:form>
을하고 일을 보인다, 단지 내 브라우저 (IE8)이 충돌을 일으 킵니다. 브라우저가 복구되면 실제로 업데이트 된 것을 볼 수 있습니다. render = "@ all"에 대한 아이디어는 브라우저가 다운되는 원인이되고 있습니까? @all을 하나의 요소로 바꿨고 정상적으로 작동했습니다.
감사합니다! 나는 upvote 할 것이지만 나는 아직 할 수 없다 : ( – taylordurden
당신을 환영한다. 투표에 대해 걱정할 필요가 없다. – BalusC