-1
私はサーブレットからデータを取ってチャートを描くためのJSPコードを書いています。 "submit"ボタンをフォームの外側に残し、正しいグラフが描画されていません。 しかし、グラフの代わりにフォーム内のボタンを呼び出すと、正しいデータを持つデータテーブルが取得されています。つまり、サーブレットのデータがフォームの外側にないフォームに渡されたと思います。ここ サーブレットからJSPコードにデータを渡すにはどうすればいいですか?
は私のJSPコード
<form action="NewServlet1" method="Post" >
<center>
<input type="text" name="website" list="website" placeholder="Enter your website">
<datalist id="website">
<option value="https://www.google.lk/">GOOGLE</option>
<option value="https://www.yahoo.com/">YAHOO</option>
<option value="https://www.hackerrank.com/">HACKER RANK</option>
</datalist><br>
<button id="button2" name="button2" onclick="submit()" class="btn btn-primary">submit</button>
<br><br><br>
</center></form>
<div style="width: 400px; height: 400px">
<canvas id="myChart" width="10000" height="10000" ></canvas>
</div>
<center> <div>
<button id="button1" name="button1" onclick="submit()" class="btn btn-primary">submit</button>
</div></center>
<script>
function Test(today, time) {
var ctx = new Chart(document.getElementById("myChart")
, {
type: 'line',
data: {
labels: today,
datasets: [{
data: time,
label: "Web Service 1",
borderColor: "red",
fill: false
}
]
},
options:
{
scales: {xAxes: [{display: true, scaleLabel: {display: true, labelString: 'date and time'}}], yAxes: [{display: true, ticks: {beginAtZero: true, steps: 100, stepValue: 50, max: 6000}}]},
hover: {intersect: false },
title: {display: true, text: 'response time of selected website'},
tooltips: { mode: 'nearest'}
}
});
}
function submit()
{
$.post("NewServlet1",
{
},
function (data)
{
Test(data.today, data.time);
});
}
これは私のサーブレットのコードである
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html"); //1st line
String website = request.getParameter("website"); //2nd line
NewClass1 myclass1 = new NewClass1();
NewClass2 myclass2 = new NewClass2();
//String website1 = "https://www.google.lk/"; /*when I use this line instead of 1st
//and 2nd lines
//I'm getting perfect graph but I want
// to take user input not fixed input*/
try {
myclass2 = myclass1.myclass(website);
} catch (Exception ex) {
Logger.getLogger(NewServlet1.class.getName()).log(Level.SEVERE, null, ex);
}
int time[] = NewClass1.time1;
String today[]=NewClass1.today;
NewClass3 myclass3 = new NewClass3();
myclass3.time=time;
myclass3.today=today;
Gson gson = new Gson();
String jsonString = gson.toJson(myclass3);
response.setContentType("application/json");
response.getWriter().write(jsonString);
}
誰かが私の間違いを犯すことができ
私の間違いを犯してもいいですか? – sabari
私はあなたが間違いを犯すことができないので、私はそれをしたくない – tumblerwolverine
それは大丈夫です:)上記のお返事ありがとうございます。 – sabari