我有两个按钮,“搜索”和“矩阵搜索”。当我第一次点击“搜索”按钮时,它会做它应该做的事情。但是,如果我在单击“矩阵搜索”按钮后单击“搜索”按钮,它会调用 matrixSearch() 函数。为什么会这样?和范围有关系吗?
以下是我的操作顺序:
单击按钮 A---> 工作正常(调用函数 A)
单击按钮 B---> 工作正常(调用函数 B)
单击按钮 A---> 调用按钮 B onClick 函数(调用函数 B)为什么?
jsp文件:
<input type="submit" title="Search" value="Search"
name="Search" id="Search"
onClick="clickSearchButton();" />
<input type="button" class="buttonIndent" value="Matrix Search"
onclick="matrixSearch()" />
function matrixSearch(){
//some Code omitted for simiplicity
form.action = '<%= request.getContextPath() %>/matrixSearch.do';
}
function clickSearchButton(){
form.action = "<%= request.getContextPath()%>/search.do";
form.setAttribute("target", "_blank");
document.form.submit();
}
Struts 配置文件:
<action path="/search" type="com.action.MyAction"
name="form" scope="session" validate="false"
parameter="search">
<forward name="success" path="tile.view"/>
</action>
<action path="/matrixSearch"
type="com.action.MyAction"
name="form" parameter="searchMatrix"
scope="request" validate="false">
<forward name="success" path="/matrix_search.jsp"/>
<forward name="failure" path="tile.view"/>
</action>