我有一个框架集,我可以在其中加载一些页面,例如
Top -> Header
Left -> Menu
Right -> Data
但是当我尝试单击菜单时,实际页面必须加载到右侧框架中,但它没有发生,而是加载到左侧框架中,并且菜单移动到右侧。
我已经给出了 target="rightSideFrame"但仍然没有得到。
我用java代码创建菜单链接,并使用struts1.2.9框架
以下是我的代码片段:
HTML:
<frameset border="0" frameborder="0" framespacing="0" rows="64,*">
<frame border="0" frameborder="0" framespacing="0" id="topFrame" name="topFrame" src="<%=resourcePath%>/common/header.jsp" marginheight="0" marginwidth="0" noresize="noresize" scrolling="no">
<frameset border="0" frameborder="0" framespacing="0" id="MainFrameSet" cols="209,*">
<frame noresize="noresize" border="0" frameborder="0" framespacing="0" id="leftFrame" name="leftFrame" src="<%=resourcePath%>/common/left_menu.jsp" scrolling="auto">
<frame border="0" frameborder="0" framespacing="0" id="workFrame" name="workFrame" src="<%=resourcePath%>/common/WelcomePage.jsp" marginheight="7" marginwidth="7" noresize="noresize" scrolling="auto">
</frameset>
</frameset>
和菜单链接:
<a href=\"#\" target=\"workFrame\" onclick=\"getMenuRequest('"+model.getResource_name()+"','goToHome')\">"+model.getMenu_name()+"</a>
更新:
和getmenuRequest
function getMenuRequest(actionName,methodName){
document.forms[0].action=actionName+".htm";
document.forms[0].method.value=methodName;
document.forms[0].submit();
}
请帮我解决这个问题
问候
最佳答案
问题是,当 JavaScript 提交表单时,链接的 target
属性会被忽略,您必须修改 getMenuRequest
方法来设置 表单
目标:
function getMenuRequest(actionName,methodName){
document.forms[0].action=actionName+".htm";
document.forms[0].method.value=methodName;
document.forms[0].target='workFrame';
document.forms[0].submit();
}
但有一个警告,如果您稍后在其他请求中提交表单,它仍然会有 workFrame
的目标,然后可能会定位到错误的框架...
注意我没试过这个...
关于java - 页面未在所需的框架中加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12953365/