他们的任务是在javascript中添加循环

他们的任务是在javascript中添加循环,javascript,java,jsp,web,web-deployment,Javascript,Java,Jsp,Web,Web Deployment,我尝试使用日历代码笔中的模板,所以我的目标是添加一些具有事件名称和开始和结束日期的事件。所以我使用java和JSP来编码这是代码输出,但需要定义索引。我一次又一次地尝试了许多添加循环的方法,但都出现了错误 <%@page import="java.util.Arrays"%> <%@page import="java.sql.ResultSet"%> <%@page import="java.sql.Stateme

我尝试使用日历代码笔中的模板,所以我的目标是添加一些具有事件名称和开始和结束日期的事件。所以我使用java和JSP来编码这是代码输出,但需要定义索引。我一次又一次地尝试了许多添加循环的方法,但都出现了错误

<%@page import="java.util.Arrays"%>
<%@page import="java.sql.ResultSet"%>
 <%@page import="java.sql.Statement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.util.Date"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE HTML>
<HTML>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>

<link href='https://cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.1.0/fullcalendar.print.min.css' rel='stylesheet' media='print' />
<link href='https://cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.1.0/fullcalendar.min.css' rel='stylesheet'>
<link href='https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.2.7/semantic.min.css' rel='stylesheet'>
<script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.2.7/semantic.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.1.0/fullcalendar.min.js"></script>   

</head>
<body>
<br/>
<div class="ui container">
  <div class="ui grid">
    <div class="ui sixteen column">
      <div id="calendar"></div>
    </div>
  </div>
</div>
<%
String[] eventArray=new String[3];
String[] startdateArray=new String[3];
String[] enddateArray=new String[3];
int i=0;
try {
    Class.forName("com.mysql.jdbc.Driver");
    Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/calendar","root","");
    Statement st=(Statement) con.createStatement();
    ResultSet rs=(ResultSet) st.executeQuery("select * from events");
    while(rs.next()){
        eventArray[i]=rs.getString("event");
        startdateArray[i]=rs.getString("startdate");
        enddateArray[i]=rs.getString("enddate");
        
        /*System.out.println("Event is:" +eve);
        System.out.println("Starting Date is:" +startdate);
        System.out.println("Ending date is:" +enddate);*/
    
        i=i+1;  
    }
} catch (Exception e) {
    e.printStackTrace();
}
%>
<script>
var event=[ ];
var startd=[ ];
var endd=[ ];

<%for(int x=0;x<eventArray.length;x++) {%>
event[<%= x %>]='<%=eventArray[x]%>';
startd[<%= x %>]='<%=startdateArray[x]%>';
endd[<%= x %>]='<%=enddateArray[x]%>';
<%}%>
var j=0;
even:[
{ title: event[j] ,start: startd[j],end: endd[j],}
]
$(document).ready(function() {
        $('#calendar').fullCalendar({
            
            header: {
                left: 'prev,next today',
                center: 'title',
                right: 'month,basicWeek,basicDay'
            },
            
            defaultDate: '2020-06-28',
            navLinks: true, // can click day/week names to navigate views
            editable: true,
            eventLimit: true, // allow "more" link when too many events
                events: [
                                { title: event[j] ,start: startd[j],end: endd[j],},
                                //{ title: event[5] ,start: startd[5],end: endd[5],},
                            //{ title: event[j] ,start: startd[j],end: endd[j],},
                            //{ title: event[j+1] ,start: startd[j+1],end: endd[j+1],},
                            //{ title: event[j+2] ,start: startd[j+2],end: endd[j+2],},
                        ]
            
        });
    });
</script>

在此处插入标题

var事件=[]; var startd=[]; var endd=[];
您不必在
js
中创建3个不同的数组,而是可以使用
对象创建
json数组
,并将其传递给
fullcalendar
下的
事件

您的javascript代码:

<script>
 var datas=new Array(); //declare this
<%for(int x=0;x<eventArray.length;x++) {%>

 //adding  data
    items={};
    items["title"]='<%=eventArray[x]%>';
    items["start"]='<%=startdateArray[x]%>';
    items["end"]='<%=enddateArray[x]%>';
    datas.push(items);//push data into array
<%}%>
console.log(datas)
$(document).ready(function() {
  $('#calendar').fullCalendar({
    header: {
         left: 'prev,next today',
         center: 'title',
          right: 'month,basicWeek,basicDay'
      },
            
      defaultDate: '2020-06-28',
      navLinks: true, // can click day/week names to navigate views
      editable: true,
      eventLimit: true, // allow "more" link when too many events
      events: datas //pass same json array created
    });
 });
</script>

您不必在
js
中创建3个不同的数组,而是可以使用
对象创建
json数组
,并将其传递到
fullcalendar
下的
事件中。您需要在代码中进行的一些更改:

您的javascript代码:

<script>
 var datas=new Array(); //declare this
<%for(int x=0;x<eventArray.length;x++) {%>

 //adding  data
    items={};
    items["title"]='<%=eventArray[x]%>';
    items["start"]='<%=startdateArray[x]%>';
    items["end"]='<%=enddateArray[x]%>';
    datas.push(items);//push data into array
<%}%>
console.log(datas)
$(document).ready(function() {
  $('#calendar').fullCalendar({
    header: {
         left: 'prev,next today',
         center: 'title',
          right: 'month,basicWeek,basicDay'
      },
            
      defaultDate: '2020-06-28',
      navLinks: true, // can click day/week names to navigate views
      editable: true,
      eventLimit: true, // allow "more" link when too many events
      events: datas //pass same json array created
    });
 });
</script>


java!=javascript
我甚至知道这一点,但如何解决我的问题我尝试了多种方法,但都无效我甚至知道。。。那么为什么要同时标记这两个呢?
java!=javascript
我甚至知道这一点,但如何解决我的问题我尝试了多种方法,但都无效我甚至知道。。。那么为什么要把两者都加上标签呢?非常感谢你这么清楚的解释。就像我是一个网络编程的初学者,我真的很有兴趣培养我的技能,所以如果你能帮助我,我需要一些帮助。所以当你有空的时候,你可以帮助我在编程方面发展。非常感谢你的帮助和解释非常感谢你这么清楚的解释。就像我是一个网络编程的初学者,我真的很有兴趣培养我的技能,所以如果你能帮助我的话,我需要一些帮助。所以当你有空的时候,你可以帮助我发展编程,非常感谢你的帮助和解释