if(Category.equals("Seasonal Decorations")){
out.println("<form name='adddeco' id='adddeco' method='post'>");
out.println("<input type=hidden name=cater value=decos>" +
"<table border=0 colspan=5 >" +
"<tr><th>Name & Description of DECORATION </th><th><input type=text name=deco_itemname width=30></th></tr>");
out.println("<tr><th>Product ID </th><th><input type=text name=deco_PID width=30></th></tr></table>");
out.println("<tr><th>Provider </th><th><input type=text name=deco_provide width=30></th></tr>");
out.println("<tr><th>AVAILIBILTY</th><th><select name=DECO_AVAIL>"+
"<option>UNAVAILABLE</option>" +
"<option>AVAILABLE</option></select></th></tr>");
out.println("<tr><th>No.of DECORATION </th><th><input type=text name=deco_qnty width=30></th></tr>");
out.println("<tr><th>Shelf NO </th><th><input type=text name=deco_shelfno width=30></th></tr>");
out.println("<tr><th>Original Price </th><th><input type=text name=deco_orgprice width=30></th></tr>");
out.println("<tr><th>Selling Price </th><th><input type=text name=deco_sellprice width=30></th></tr>");
out.println(" <input type=button value=add onclick='$(#adddeco).attr(action,additem1);$(#adddeco).submit();'> <input type=reset value=clear>" +
"</form>");
以上是我在Servlet中的代码,为了向DB输入一个值,但问题是我无法将此表单汇总到下一页,因为您可以看到我没有使用“提交” “按钮而不是我正在使用事件onclick =''。如果“out.println();”,上面的代码在JSP中工作被移除,但你可以看到我需要比较category.equals("seasonal decorations")
并仅在需要时运行特定代码,所以如果有人知道如何克服这个特定问题,请帮助我。
请记住,当我使用条形码扫描仪时,我无法使用sumbit按钮提交。
答案 0 :(得分:0)
避免从Servlet写出HTML,这是不好的做法。很难做到正确,难以维护,可读性极差。这是一个最适合JSP的工作。
您的问题似乎是生成的JavaScript无效。如果您检查输出页面的来源,您会注意到您正在打印出来:
<input type=button value=add onclick='$(#adddeco).attr(action,additem1);$(#adddeco).submit();'>
请注意,$()
的参数周围没有引号。应该有。
这更接近正确(我说更接近因为您的HTML也可能无效,具体取决于您的DOCTYPE
- 您没有关闭代码,而且您没有关于属性的引号):
out.println("<input type=button value=add onclick='$(\"#adddeco\").attr(action,additem1);$(\"#adddeco\").submit();'> <input type=reset value=clear>"
所有这些引用的转义都是您应该使用JSP的重要原因。
答案 1 :(得分:0)
您应该阅读并使用JSTL来使您的代码更具可读性。它允许您使用if语句和其他控制结构,而无需使用Java代码。例如:
<c:if test="category eq 'Seasonal Decorations'">
<form name="adddeco" id="adddeco" method="post">
...
</form>
</c:if>