2

私はajaxを初めて使用します。ajaxとjspを使用してデータベースからデータを取得しています。データベースに新しいデータが挿入されると、新しいデータがJspページに自動的に表示されるため、ajaxコードで。を設定しTimeout()ます。すべてのデータ行に対するjspページには、チェックボックスがあります。チェックボックスをオンにすると、ページがリロードされるときにチェックボックスが変更されます。ただし、ページを再読み込みするときにチェックボックスを変更しないでください...

<html>
<body onload="Ajax()">

<script type="text/javascript">


function Ajax()
{
    var xmlHttp;

        try
        {   
            xmlHttp=new XMLHttpRequest();// Firefox, Opera 8.0+, Safari
        }
        catch (e)
        {
            try
                {
                xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); //       Internet Explorer
                }
        catch (e)
        {
            try
                {
                xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
                }
        catch (e)
        {
            alert("No AJAX!?");
            return false;
        }
    }
}

    xmlHttp.onreadystatechange=function()
    {
        if(xmlHttp.readyState==4 && xmlHttp.status==200)
        {
                   document.getElementById('ReloadThis').innerHTML=xmlHttp.responseText;
            setTimeout('Ajax()',10000);
        }
    }

    xmlHttp.open("GET","ajaxCalled.jsp",true);
    xmlHttp.send(null);

}

デフォルトのテキスト

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"  import="dbbean.DBBean,java.sql.*" 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">
<title>Insert title here</title>
<script type="text/javascript">
function checkboxCheck()
{
var checkbox1=document.getElementsById("checkbox0")

if(checkbox1.checked)
    {
    alert(checkbox1);
    checkbox1.checked="true";


    }
else
    {
    alert(checkbox1);
    }
}
</script>
</head>
<body onLoad="checkboxCheck()">



        <table border=1 cellspacing=0 cellpadding=10>
            <tr>
                <th>checkbox</th>

<%
    DBBean db=new DBBean();
    Connection con=null;
    ResultSet rs=null;
    int count=0;
    String checkName="checkbox";
    String checkbox1="";
    try
    {
        con=db.getDBConnection();
        rs=db.execSQL("select * from login_history");
%>                  


                <th>user_id</th>
                <th>ip_address</th>
                <th>login_status</th>
            </tr>

    <%
        while(rs.next())
        {
            checkbox1=checkName+count;
            count++;
            out.println(checkbox1);
        %>

        <tr>
            <td><input type="checkbox" id="<%= checkbox1 %>"  ></td>
            <td><%=rs.getString(1) %></td>
            <td><%=rs.getString(2) %></td>
            <td><%=rs.getString(3) %></td>
        </tr>

<%
    /* out.println(rs.getString(1));
    out.println(rs.getString(2));
    out.println(rs.getString(3));
    out.println("</br></br>");*/    
    }
%>

    </table>
<%
    rs.close();
    con.close();
}
catch(Exception e)
{
    e.printStackTrace();
}
%>

<div id="disp" style="visibility:hidden">
</div>

</body>
</html>
4

1 に答える 1

0

もしそうなら、サーブレットを使用していると思います。次に、選択値をリクエスト セット属性に保存し、ページのリロードに戻るときに割り当てます。

request.setAttribute("attributeName",attributeValue); 

サーブレットリクエストで属性を設定し、jsp で直接式言語ELを使用するか、 JavaScript操作で取得します

于 2012-05-29T07:04:07.583 に答える