0
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
    <%@ page isELIgnored="false" %>
<%@ page import="java.util.*"%>

<%@page import="com.ba.RetrieveDetails"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script type="text/javascript">
history.forward();
function validate(logFile){

    var count=0;

    for (var i=0; i<logFile.length; i++) {
        if (logFile[i].checked) {

            count++;
        }

    }

    if (count < 1) 
    {
    alert("please select Log Fille(s)");
    return false;
    }

    }

</script>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Log Files</title>


</head>
<body>
<form name="LogFiles" action="RetrieveLogFiles" method="get" onsubmit="">
<%
HashMap hs=new HashMap();
hs=(HashMap)session.getAttribute("key");

session.getAttribute("key");

String hosts[]=(String[])session.getAttribute("hosts");
%>
<br>
<br>
<img src="BA_Logo1.bmp" align="right" alt="British Airways">
<table>
<tr>
<%
if(hs.size()== 0)
{%>
    <td><h3>Authentication fail OR Does not have access to UnixBox.Click <a href="Login.jsp">Here</a> to Login</h3></td>
<%
}
else
{
for(int i=0;i<hosts.length;i++)
{
    %>

    <h3><p><%out.println(hosts[i]+"\n");%></p></h3>

    <%


    ArrayList al=new ArrayList();
    al=(ArrayList)hs.get(hosts[i]);
    int flag=al.size();


    %>
    <td>
    <table border="2" cellpadding="4">  

    <%
    if(flag==0)
    {%>

    <td>
    <h3><p style="color:#FF0000">No Log Files to display</p></h3>
    </td>


    <%

    }else{
    for(int j=0;j<al.size();j++)
    {



        String lines[]=al.get(j).toString().split("\\r?\\n");



        for(int len=0;len<lines.length;len++)
        {

            %>

        <tr>
        <td><%out.println(lines[len]);%></td>

    <td><input type="checkbox" name="logFile" id="logFile" value="<%=hosts[i]+"$"+lines[len]%>"></td>
    <td><input type="radio" name="logFileView" id="logFileView" value="<%=hosts[i]+"$"+lines[len]%>"></td>
    </tr>


        <%
        }%>

        </table>
        </td>
        </tr>
        </table>
<%  }

}   

    }%>
<input type="submit" name="Get Logs" align="middle" value="Get Logs" onclick="return validate(logFile)" >
<%
}

%>


</form>
</body>
</html>

ここで、logFileView.it のラジオ ボタンを押すと、logFile であるすべてのチェック ボックスを無効にする必要がありますか? 逆も必要。これについて助けてください

logFileView はラジオ ボタンで、logFile はチェックボックスです。ここでは、複数のチェックボックスと複数のラジオボタンを使用しています。

4

1 に答える 1

0

これらのJavaScript コード
を使用して実現できます 。まず、ループしてすべての要素 (チェック ボックスなど) を取得し、onclick イベント リスナーをそれらに追加します。次に、内側のループは、チェックボックスをクリックしたときにすべてのラジオボタンを無効にすることです。同じロジックがラジオボタンに適用されます。

var logFiles = document.getElementsByName("logFile");
var logFileViews = document.getElementsByName("logFileView");

//To disable all radio buttons when click on any check box
for (var i=0, count=logFiles.length; i < count; i++) {
    logFiles[i].onclick = function() {
        for (var j=0, count=logFileViews.length; j < count; j++) {
            logFileViews[j].disabled = true;
        }
    };
}

//To disable all check boxes when click on any radio button
for (var i=0, count=logFileViews.length; i < count; i++) {
    logFileViews[i].onclick = function() {
        logFiles.disabled = true;
        for (var j=0, count=logFiles.length; j < count; j++) {
            logFiles[j].disabled = true;
        }
    };
}
于 2013-02-12T14:12:57.417 に答える