在JSP中创建链接与Java执行jquery

时间:2011-05-03 07:55:31

标签: jquery html ajax jsp

与我的小组在学校建立一个系统,并在弄清楚如何做到这一点时遇到了问题...

我有一个表,我让JSP使用for循环填充一些数据。

表格单元格中的每个数据表示使用JPA的权力的对象。当然,他们有自己的id

在我们的java代码中,我们希望能够使用我们称为setDone(true)的方法完成任务。

如何在JSP页面上以可视方式完成此操作?我猜Jquery / ajax是一种方法。

我希望这是有道理的。在这里,您可以看到勾选/取消勾选按钮。 enter image description here

修改

这就是我的HTML / JSP代码的样子:

                                                                               “>                             “>                                                                               “>                                                                               “>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

这就是jquery:

$(function() {
            $('#done').click(function() {
                $.post("servletUri", {id: idParam, done: doneParam}, function() {
                     $("doneImage-id").attr("src", correction-done.png);
                });
            });
        });

但我仍然是jquery的新手,所以我不知道如何实现这个。

2 个答案:

答案 0 :(得分:1)

是的,jquery是个不错的选择。以下是一些基本步骤:

    在foreach循环中
  • <img id="doneImage-${row.id}" onclick="setDone('${row.id}', ${!row.done})" />
  • javascript函数setDone应该通过ajax

    调用servlet
    $.post("servletUri", {id: idParam, done: doneParam}, function() { 
         $("doneImage-id").attr("src", ...); // set here the new image
    };
    

这将导致每一行使用不同的id参数调用setDone函数,以便它知道您单击了哪一行。

答案 1 :(得分:1)

您可以使用jQuery进行调用,但是您需要一些东西来“回答”该调用并使用JPA实际更新数据库。通常你会使用某种类型的MVC框架,比如Spring MVC或Struts,但你也可以使用普通的servlet。

总结:

  1. 向检查图像添加一个jQuery单击处理程序,该检查图像向servlet发出请求(具有任务的id或索引)。
  2. 将JPA对象加载到servlet或控制器中,然后调用setDone并更新。
  3. 适当地使用jQuery修改检查图像。