onclick事件沒有反應 是不是中的方法沒有調用 我是新手 好多不明白


大家好,這是我寫的一個jsp頁面 為什么點擊按鈕之后沒有反應呢

<%@ page contentType="text/html;charset=gb2312"%>
<html>
<head>
<script language="JavaScript">
    function isValidate(form)
    {
        // 得到用戶輸入的信息
        username = form.username.value;
        userpass = form.userpass.value;
        userpass2 = form.userpass2.value;
        age = form.age.value;
        address = form.address.value;

        // 判斷用戶名長度
        if(!minLength(username,2))
        {
            alert("用戶名長度小於6位!");
            form.username.focus();
            return false;
        }
        if(!maxLength(username,8))
        {
            alert("用戶名長度大於8位!");
            form.username.focus();
            return false;
        }

        // 判斷口令長度
        if(!minLength(userpass,6))
        {
            alert("口令長度小於6位!");
            form.userpass.focus();
            return false;
        }
        if(!maxLength(userpass,8))
        {
            alert("口令長度大於8位!");
            form.userpass.focus();
            return false;
        }

        // 判斷用戶名和口令是否相同
        if(username==userpass)
        {
            alert("用戶名和口令不能相等!");
            form.userpass.focus();
            return false;
        }

        // 驗證兩次口令是否相同
        if(userpass != userpass2)
        {
            alert("兩次輸入的口令不相同!");
            form.userpass.focus();
            return false;
        }


        // 驗證地址的長度是否正確
        if(!maxLength(address,50))
        {
            alert("地址長度大於50位!");
            form.address.focus();
            return false;
        }
        return true;
    }

    // 驗證是否滿足最小長度
    function minLength(str,length)
    {
        if(str.length>=length)
            return true;
        else
            return false;
    }
    // 判斷是否滿足最大長度
    function maxLength(str,length)
    {
        if(str.length<=length)
            return true;
        else
            return false;
    }
    function deleteinfo(form)
    {
     form.action="deleteUser";
     confirm("真的要刪除嗎");
     form.method="post";
     form.submit();
    }
    function updateinfo(form)
    {
     isValidate(form);
     form.action="updateUserinfo";
     form.method="post";
     form.submit();
    }
</script>
<title>用戶信息</title>
</head>
<body>
<h2 align="center">
用戶信息
</h2>
<form name="form1">
<table align="center">
<tr>
<td>
用戶名:
</td>
<td>
<input type="text" name="username"
value="${sessionScope.user.username}">
</td>
</tr>
<tr>
<td>
口 令:
</td>
<td>
<input type="password" name="userpass"
value="${sessionScope.user.userpass}">
</td>
</tr>
<tr>
<td>
年 齡:
</td>
<td>
<input type="text" name="userage"
value="${sessionScope.user.userage}">
</td>
</tr>
<tr>
<td>
地 址:
</td>
<td>
<input type="text" name="useraddress"
value="${sessionScope.user.useraddress}">
</td>
</tr>
<tr>
<td>
<input type="button" value="刪除" onclick="return deleteinfo();">
</td>
<td>
<input type="button" value="更新" onclick="return updateinfo(form1);">
</td>
</tr>
</table>
<div align="center">
<font size="2"><a href="login.jsp">返回登錄界面</a>
</font>
</div>
</form>

</body>
</html>

10 个解决方案

#1


alert調試

#2


試了onclick="alter(this.value)" 沒有反應

#3


頁面報不報腳本錯誤?

#4


不報錯誤 什么提示都沒有

#5


缺少對象啊  傳進去的值獲取不到對象  貌似是  最好用document.getElementById  document.name好像有時不好使

#6


userpass2 有這name屬性???建議使用document.getElementById()

#7


引用 5 樓  的回復:
缺少對象啊 傳進去的值獲取不到對象 貌似是 最好用document.getElementById document.name好像有時不好使

什么意思啊 是指用戶信息沒有傳進去嗎 
onclick="return updateinfo(form1)這樣已經是傳入了form1了啊
還有用documen.getElementById 方法 
是指username = document.getElementById(id)這樣嗎 

#8


引用 5 樓  的回復:
缺少對象啊 傳進去的值獲取不到對象 貌似是 最好用document.getElementById document.name好像有時不好使

什么意思啊 是指用戶信息沒有傳進去嗎 
onclick="return updateinfo(form1)這樣已經是傳入了form1了啊
還有用documen.getElementById 方法 
是指username = document.getElementById(id)這樣嗎 

#9


onclick="return deleteinfo();" 改為:onclick="return deleteinfo(this);"
onclick="return updateinfo(form1); 改為:onclick="return updateinfo(this);"

另外form.action="deleteUser";
是用了框架要到Java后台刪除數據庫嗎,這里看看deleteUser 指定的路徑對不對

#10


引用 9 樓  的回復:
onclick="return deleteinfo();" 改為:onclick="return deleteinfo(this);"
onclick="return updateinfo(form1); 改為:onclick="return updateinfo(this);"

另外form.action="deleteUser";
是用了框架要到Java后台刪除數據庫嗎,這里看看……

是用到了數據庫 但是
onclick="return deleteinfo();" 改為:onclick="return deleteinfo(this);"
這樣改不正確 已經找到原因了 
是沒有設置userpass2屬性的問題

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com