各位大侠你们好 小弟最近在做jsp包含js的时候出了问题想问问谁能帮助解决万分感激
我的jsp代码如下<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<%@   page isELIgnored="false"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>"> <title>My JSP 'UserManage.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
<script type="text/javascript" src="/commonSource/UserManager.js" >
function modifyUser() {
var count = 0;
var j = 0;
for (var i = 0; i < document.getElementsByName("selectFlag").length; i++) {
if (document.getElementsByName("selectFlag")[i].checked) {
j = i;
count++;
}
}
if (count == 0) {
alert("请选择需要修改的用户!");
return;
}
if (count > 1) {
alert("一次只能修改一个用户!");
return;
}
if (count == 1) {
window.self.location = "loadUser?userId=" + document.getElementsByName("selectFlag")[j].value;
}
}

</script>
</head> <body>
<form name="userManagerForm" id="userManagerForm" action="">
<table bordercolor="red">
<c:if test="${empty userList}">
<tr>
<td>
没有用户
</td>
</tr>
</c:if>
<c:if test="${!empty userList}">
<tr>
<td>
选中
</td>
<td>
用户编号
</td>
<td>
用户名
</td>
<td>
用户权限
</td>
</tr>
<c:forEach items="${userList}" var="users">
<tr>
<td>
<input type="checkbox" name="selectFlag" value="${users.userId}">
</td>
<td>
${users.userId}
</td>
<td>
${users.username }
</td>
<td>
${users.type.userTypeMethodContent }
</td>
</tr>
</c:forEach>
<tr>
<td>
<input type="button"  onclick="modifyUser()" value="修改用户">
</td>
<td>
<input type="button"  onclick="" value="删除用户">
</td>
</tr>
</c:if> </table>
</form>
</body>
</html>那个js文件代码如下// JavaScript Document function deleteUser() {
var flag = false;
for (var i = 0; i < document.getElementsByName("selectFlag").length; i++) {
if (document.getElementsByName("selectFlag")[i].checked) {
flag = true;
}
}
if (!flag) {
alert("请选择需要删除的用户!");
return;
}
if (window.confirm("确认删除吗?")) {
with (document.getElementById("")) {
method = "post";
action = "";
submit();
}
}
}
但是在调用的时候就不能用了 请问这个问题怎么解决 错误的时候问题直指<script type="text/javascript" src="/commonSource/UserManager.js" >

<input type="button"  onclick="modifyUser()" value="修改用户">
请帮忙解决谢谢啦

解决方案 »

  1.   

    改了一下,应该使是这个原因吧,注意我写的地方与你源代码的区别
    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%
        String path = request.getContextPath();
        String basePath = request.getScheme() + "://"
                + request.getServerName() + ":" + request.getServerPort()
                + path + "/";
    %>
    <%@   page isELIgnored="false"%>
    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
        <head>
            <base href="<%=basePath%>">        <title>My JSP 'UserManage.jsp' starting page</title>        <meta http-equiv="pragma" content="no-cache">
            <meta http-equiv="cache-control" content="no-cache">
            <meta http-equiv="expires" content="0">
            <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
            <meta http-equiv="description" content="This is my page">
            <!--
        <link rel="stylesheet" type="text/css" href="styles.css">
        -->
            <script type="text/javascript" src="/commonSource/UserManager.js" />//这一行加了一个“/”结束标签的标示符,这一行是用来引进js文件的
            <script type="text/javascript"> // 这一行楼主的代码里面没有,这一行对应后面的</script>标签,这里面用来放直接写在jsp文件里面的js脚本
            function modifyUser() {
            var count = 0;
            var j = 0;
            for (var i = 0; i < document.getElementsByName("selectFlag").length; i++) {
                if (document.getElementsByName("selectFlag")[i].checked) {
                    j = i;
                    count++;
                }
            }
            if (count == 0) {
                alert("请选择需要修改的用户!");
                return;
            }
            if (count > 1) {
                alert("一次只能修改一个用户!");
                return;
            }
            if (count == 1) {
                window.self.location = "loadUser?userId=" + document.getElementsByName("selectFlag")[j].value;
            }
        }
        
        </script>
        </head>    <body>
            <form name="userManagerForm" id="userManagerForm" action="">
                <table bordercolor="red">
                    <c:if test="${empty userList}">
                        <tr>
                            <td>
                                没有用户
                            </td>
                        </tr>
                    </c:if>
                    <c:if test="${!empty userList}">
                        <tr>
                            <td>
                                选中
                            </td>
                            <td>
                                用户编号
                            </td>
                            <td>
                                用户名
                            </td>
                            <td>
                                用户权限
                            </td>
                        </tr>
                        <c:forEach items="${userList}" var="users">
                            <tr>
                                <td>
                                    <input type="checkbox" name="selectFlag" value="${users.userId}">                            
                                </td>
                                <td>
                                    ${users.userId}
                                </td>
                                <td>
                                    ${users.username }
                                </td>
                                <td>
                                    ${users.type.userTypeMethodContent }
                                </td>
                            </tr>
                        </c:forEach>
                        <tr>
                            <td>
                                <input type="button"  onclick="modifyUser()" value="修改用户">
                            </td>
                            <td>
                                <input type="button"  onclick="" value="删除用户">
                            </td>
                        </tr>
                    </c:if>            </table>
            </form>
        </body>
    </html>
      

  2.   

    还是不好用 
    网页错误详细信息用户代理: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727; CIBA; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022)
    时间戳: Wed, 4 Nov 2009 03:36:34 UTC
    消息: 缺少对象
    行: 520
    字符: 1
    代码: 0
    URI: http://localhost:8080/art/manager/listAllUsers
    我改了jsp页面的代码jsp的代码如下<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
    + request.getServerName() + ":" + request.getServerPort()
    + path + "/";
    %>
    <%@   page isELIgnored="false"%>
    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <base href="<%=basePath%>"> <title>My JSP 'UserManage.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->
    <script type="text/javascript" src="/commonSource/UserManager.js"/>
    <script type="text/javascript" >

    function modifyUser() {
    var count = 0;
    var j = 0;
    for (var i = 0; i < document.getElementsByName("selectFlag").length; i++) {
    if (document.getElementsByName("selectFlag")[i].checked) {
    j = i;
    count++;
    }
    }
    if (count == 0) {
    alert("请选择需要修改的用户!");
    return;
    }
    if (count > 1) {
    alert("一次只能修改一个用户!");
    return;
    }
    if (count == 1) {
    window.self.location = "loadUser?userId=" + document.getElementsByName("selectFlag")[j].value;
    }
    } </script>
    </head> <body>
    <form name="userManagerForm" id="userManagerForm" action="">
    <table bordercolor="red">
    <c:if test="${empty userList}">
    <tr>
    <td>
    没有用户
    </td>
    </tr>
    </c:if>
    <c:if test="${!empty userList}">
    <tr>
    <td>
    选中
    </td>
    <td>
    用户编号
    </td>
    <td>
    用户名
    </td>
    <td>
    用户权限
    </td>
    </tr>
    <c:forEach items="${userList}" var="users">
    <tr>
    <td>
    <input type="checkbox" name="selectFlag" value="${users.userId}">
    </td>
    <td>
    ${users.userId}
    </td>
    <td>
    ${users.username }
    </td>
    <td>
    ${users.type.userTypeMethodContent }
    </td>
    </tr>
    </c:forEach>
    <tr>
    <td>
    <input type="button"  onclick="modifyUser()" value="修改用户">
    </td>
    <td>
    <input type="button"  onclick="deleteUser()" value="删除用户">
    </td>
    </tr>
    </c:if> </table>
    </form>
    </body>
    </html>
    标记的部分按照楼上的大侠说的去该了但是还是不能用啊 这是不是JavaScript支持的原因啊
    错误页面的源码就指向了  <input type="button"  onclick="modifyUser()" value="修改用户">
    这里呢 不知道怎么回事啊
      

  3.   

    问题解决了 用的代码如下是用了jsp的一个include 标签<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
    + request.getServerName() + ":" + request.getServerPort()
    + path + "/";
    %>
    <%@   page isELIgnored="false"%><%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <base href="<%=basePath%>"> <title>用户管理</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->
    <%@ include file="/commonSource/UserManager.js"%>
    </head> <body>
    <form name="userManagerForm" id="userManagerForm" action="">
    <table bordercolor="red">
    <c:if test="${empty userList}">
    <tr>
    <td>
    没有用户
    </td>
    </tr>
    </c:if>
    <c:if test="${!empty userList}">
    <tr>
    <td>
    选中
    </td>
    <td>
    用户编号
    </td>
    <td>
    用户名
    </td>
    <td>
    用户权限
    </td>
    </tr>
    <c:forEach items="${userList}" var="users">
    <tr>
    <td>
    <input type="checkbox" name="selectFlag" value="${users.userId}">
    </td>
    <td>
    ${users.userId}
    </td>
    <td>
    ${users.username }
    </td>
    <td>
    ${users.type.userTypeMethodContent }
    </td>
    </tr>
    </c:forEach>
    <tr>
    <td>
    <input type="button" onclick="modifyUser()" value="修改用户">
    </td>
    <td>
    <input type="button" onclick="deleteUser()" value="删除用户">
    </td>
    </tr>
    </c:if> </table>
    </form>
    </body>
    </html>
    js文件的代码如下<script charset="UTF-8" type="text/javascript" >// JavaScript Document
    function modifyUser() {
    var count = 0;
    var j = 0;
    for (var i = 0; i < document.getElementsByName("selectFlag").length; i++) {
    if (document.getElementsByName("selectFlag")[i].checked) {
    j = i;
    count++;
    }
    }
    if (count == 0) {
    alert("请选择需要修改的用户!");
    return;
    }
    if (count > 1) {
    alert("一次只能修改一个用户!");
    return;
    }
    if (count == 1) {
    window.self.location = "loadUser?userId=" + document.getElementsByName("selectFlag")[j].value;
    }
    } function deleteUser() {
    var flag = false;
    for (var i = 0; i < document.getElementsByName("selectFlag").length; i++) {
    if (document.getElementsByName("selectFlag")[i].checked) {
    flag = true;
    }
    }
    if (!flag) {
    alert("请选择需要删除的用户!");
    return;
    }
    if (window.confirm("确认删除吗?")) {
    with (document.getElementById("")) {
    method = "post";
    action = "";
    submit();
    }
    }
    }
    </script>