struts jquery插件锚标签不起作用

时间:2013-10-10 10:12:35

标签: java javascript jquery jsp struts2

我创建了一个名为“menubar.jsp”的页面,如下所示:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding="ISO-8859-1"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <%@ taglib prefix="s" uri="/struts-tags"%>
    <%@ taglib prefix="sj" uri="/struts-jquery-tags"%>

    <html>
    <head>
        <s:head/>
        <sj:head/>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    </head>
    <body>
        <div id='cssmenu'>
                <ul>
                    <li><s:a action="#"><span>Home</span></s:a></li>
                    <li><s:a action="registerLink"><span>Register</span></s:a></li>

                    <s:url  id="loginClick" value="/loginLink.action"></s:url>
                    <li><sj:a id="login_click" href="%{loginClick}" targets="mainContent"><span>Login</span></sj:a></li>
                    <li><s:a action="loginLink"><span>Administration</span></s:a></li>
                    <li class='last'><s:a action="#"><span>Preferences</span></s:a></li>
                </ul>
        </div>
    </body>
    </html>

我已将此页面包含在index.jsp页面中,如下所示:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<link rel="stylesheet" type="text/css" href="style.css" media="all" />

<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

<script>
    $(function() {
        $("#datepicker").datepicker();
    });
</script>

<title>My Air - Home</title>
</head>
<body>
    <div id="MainPage">
        <jsp:include page="header.jsp"></jsp:include>
        <jsp:include page="menubar.jsp"></jsp:include>
        <div id="mainContent">
            <div id="ContentLeft">
                <jsp:include page="search.jsp"></jsp:include>
            </div>

            <div id="contentRight">
                <jsp:include page="topdeals.jsp"></jsp:include>
            </div>
        </div>
        <br>
        <jsp:include page="footer.jsp"></jsp:include>
    </div>
</body>
</html>

我想要的是,当我点击LOGIN链接时,名为loginPage.jsp的登录页面应显示在id为“mainContent”的div中。

struts.xml文件如下:

<action name="loginLink" class="com.view.LoginAction" method="loginLink">
    <result name="loginClicked">/loginPage.jsp</result>
</action>

LoginAction类中的loginLink方法只返回“loginClicked”字符串。 我运行代码并检查其来源。那里的一切看起来很好,但点击登录后,没有任何反应。我在不同的文件中使用了相同类型的代码。它工作正常。但这不是。任何人都可以帮助我,我缺少什么或我应该做些什么来让它工作。提前谢谢。

以下代码也试图做同样的事情,它工作正常。我无法弄清楚,我在第一段代码中做错了什么:

以下是我的父页面loginSuccess.jsp:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<head>

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<link rel="stylesheet" type="text/css" href="style.css" media="all" />
<title>Login</title>
</head>
<body>
    <div id="MainPage">

        <jsp:include page="header.jsp"></jsp:include>
        <jsp:include page="menubaruser.jsp"></jsp:include>
        <div style="width:898px"><br><center>Welcome Mr. <b><s:property value="#session.name"/> </b></center> </div>
        <div id="mainContent">

           <div id="ajaxdiv">
            <div id="ContentLeft">
                <jsp:include page="search.jsp"></jsp:include>
            </div>
            <div id="contentRight">
                <jsp:include page="topdeals.jsp"></jsp:include>
            </div>
           </div>
            <br>
            <div>
                <jsp:include page="userHistoryWidget.jsp"></jsp:include>
            </div>

        </div>      
        <jsp:include page="footer.jsp"></jsp:include>
    </div>
</body>
</html>

以下是包含一些ajax调用的子页面menubaruser.jsp,并将响应放在loginSuccess.jsp的mainContent div中。

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
    <s:head/>
    <sj:head/>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>
<body>
    <div id='cssmenu'>
            <ul>
                <li><s:a action="#"><span>Home</span></s:a></li>
                <s:url  id="showProfile" value="/profile.action"></s:url>
                <li><sj:a id="profile_show" href="%{showProfile}" targets="mainContent"><span>Show Profile</span></sj:a></li>
                <s:url  id="editProfile" value="/editProfileLink.action"></s:url>
                <li><sj:a id="profile_edit" href="%{editProfile}" targets="mainContent"><span>Update Profile</span></sj:a></li>
                <s:url  id="signout" value="/logout.action"></s:url>
                <li><sj:a id="signout" href="%{signout}" targets="mainContent"><span>Sign Out</span></sj:a></li>
                <%-- <li class='last'><s:a action="#"><span>Contact Us</span></s:a></li> --%>
            </ul>
    </div>
</body>
</html>

下面给出的是我的struts.xml映射:

<action name="profile" class="com.view.ProfileAction" method="showProfile">
            <interceptor-ref name="myinterceptorSt" />
            <result name="loginSessionNotCreated">/loginPage.jsp</result>
            <result name="profile">/profile.jsp</result>
        </action>

        <action name="editProfileLink" class="com.view.ProfileAction" method="editProfileLink">
            <interceptor-ref name="myinterceptorSt" />
            <result name="loginSessionNotCreated">/loginPage.jsp</result>
            <result name="editProfile">/editProfile.jsp</result>
        </action>

        <action name="editProfile" class="com.view.EditProfileAction" method="editProfile">
            <interceptor-ref name="myinterceptorSt" />
            <result name="loginSessionNotCreated">/loginPage.jsp</result>
            <result name="profileUpdated">/profileUpdated.jsp</result>
        </action>

此代码工作正常。我在第一个问题中实现了同样的东西。但它不起作用。你能提出什么建议吗?

0 个答案:

没有答案
相关问题