2017-06-15 55 views
-2

的index.html运行按钮JSP文件单击

<form action="table2.jsp"> 
     Name:<input type="text" name="j"><br> 
     Address:<input type="text" name="k"><br> 
     phone:<input type="text" name="h"><br> 
     <input type="Submit" value="SUBMIT"><br> 
     <input type="button" value="SAVE" onclick="table1.jsp"> 
</form> 

table1.jsp

<% String a,b,c; 
     int d=0,e=0,f=0; 
     String l[]=new String[d]; 
     String m[]=new String[e]; 
     String n[]=new String[f]; 
     a=String.valueOf(request.getParameter("j")); 
     b=String.valueOf(request.getParameter("k")); 
     c=String.valueOf(request.getParameter("h")); 
     l[0]=String.valueOf(a); 
     m[0]=String.valueOf(b); 
     n[0]=String.valueOf(c); 
     out.print("SAVED"); 
     d++;e++;f++; 
     %> 

上点击 “保存” 按钮,它应该运行table1.jsp和值从index.html中的textfield应该进入table1.jsp中创建的数组内,并在每次单击“SAVE”按钮时递增d,e,f的值。帮助我了解我在做什么错误?

+0

任何人都可以帮助在jsp中创建一个函数,我可以使用index.html中的onclick事件调用...对于jsp函数,请参阅table1.jsp –

回答

1

1)onclick需要JavaScript代码,所以你最好在JS函数中调用处理事件的JS函数;在这个函数中,你可以使用AJAX call来调用table1.jsp的代码;反正

2)这样的代码不属于JSP,它应该在一个servlet中;

3)此外,还记得(或学习),在JSP/Servlet的,所有局部变量,如您def,“活”只在一个请求,即它们将被重置为0每个“SAVE “打电话;如果你想让它们存活下来,你必须将它们存储到会话范围内(或者应用范围,取决于它们应该代表什么);

4)最后但并非最不重要的:使用参数和变量名称,如abcd等是非常不好的做法,如果你犯了这样的代码放到一个项目,我的工作我会骂你上;

+0

“如果您将此类代码提交到我正在研究的项目“ - 什么?你是谁? –

+1

_你是谁?_一个试图帮助你的人。但如果我们在同一个项目上工作,我会成为你的高级同事,如果不是你的上司。无论如何,这并不意味着冒犯你,只是为了强调这种做法有多糟糕 - 即使在最小的学校项目中,也应该使用有意义的变量/方法名称,以适应它。 –

+0

好了,然后帮我在index.html中创建一个jsp函数,它将使用onclick在数组中插入文本字段的值,并让我们忘掉d,e,f的增量。 –