问题是这样的:有个列表,可以删除某条数据,点击删除,用根据此数据的Id来进行删除信息。我现在的做法是删除完成后自动跳回到本列表。当然,这条数据是没有了的,这都没问题。
现在我想,删除完成后弹出提示框,提示删除成功,点击确定后返回这个列表。
原本我想,在struts.xml里面,设置跳转页面为del_succ.jsp。在这个页面中写一个javascript,运行之后发现,这个javascript事件要点击一下才能alter。
so。。各位前辈告知一下小弟解决方案,谢谢javascript

解决方案 »

  1.   

    也可以设置成onload事件、<script>
    function init(){
      alert("xx");
    }
    </scipt>
    <body onload="init()" ></body>
      

  2.   

    如果有jquery的话$(function (){
        alert("xx");
    });
      

  3.   

    或者$(function() {
        alert("xxxx")
     })
      

  4.   


    //删除调用函数
    function _delteData(){
      $.ajax({
    type:"post",
    url:"删除提交URL",
    data:{
    //删除提交Id编号数据
    },success:function(data){
    alert("删除成功");
    window.location.reload();
    }
    })}
      

  5.   

     javascript  就可以了啊 function delXXX(a,b)
     {
         //这里就是你要调的方法     #a,b 是你的参数 
     }
      

  6.   

    不要往aciton里跳转,刷新来刷新去的,不仅不友好,还啰嗦
      

  7.   

    <script>
    function init(){
      alert("xx");
    }
    </scipt>
     
     
    <body onload="init()" >
     
    </body>
      

  8.   

    写一个加载数据的js方法 ,放到 body  onload="【你的方法名字A】"再写一个删除的js方法做删除用 , 在删除的方法中 用AJax调用 ,在OnSuccess中先弹出提示 ,然后 在调用 【你的方法名字A】
      

  9.   


    /**
     * 商品的ajax
     * @author Administrator
     */
    @AjaxBean(name = "goodsAjax")
    public class GoodsAjax extends AjaxSupport {
        
        @MatchingBean
        public GoodsService service;    /**
     * 删除商品
     * @param goodsId
     * @return
     */
    @AjaxMethod
    public String delById(Long goodsId) {
    try {
    service.del(goodsId);
    return "1;操作成功!";
    } catch (Exception e) {
    e.printStackTrace();
    }
    return "0;系统繁忙,请稍候重试!";
    }}
    <script type="text/javascript" src="/flash/ajax/goodsAjax.js.svl"></script>function doDel() {
    confirmWin("询问", 300, 110, "您确定要删除这个商品吗?", "doDel1()");
    }function doDel1() {
    setLoadGress("提交到服务器", "正在提交,请稍候...", 260, 60);
    goodsAjax.delById(pageObj.list[objIndex].id, function(result) {
    closeLoadGress();
    var callback = (result.split(";")[0] == "1") ? "loadPage('" + pageObj.pageNo + "')" : "";
    alertWin("提示", 260, 110, result.split(";")[1], result.split(";")[0], callback);
    });
    }
      

  10.   

    只给个思路:在你点击删除操作是就发一个js函数,后台需要的值。该函数先提示是否删除。如果是执行你的action,如果否,就结束函数。即先判断后执行。
      

  11.   

    你综合下4,7,13楼的说法
    给个温馨提示
    不要每次都想着刷新页面或者页面跳转,
    这样页面上的bug很多
    而且如果我用浏览器的回退功能回到你删除之前的页面时
    还是可以继续操作你已经删除的数据了
    你的麻烦就大了
    删除嘛,就ajax提交就是最好了
    提交完毕,如果操作成功,则ajax刷新下列表就全好了
    你试想下,如果你的列表页面不仅仅只包含列表,而是包含了其他很多的内容,你跳转回这个页面的时候是不是很多内容都需要重新到数据库中查询呢.....严重浪费内存和效率
    另外新增修改删除等操作后跳转到列表页面的时候你有没有试过F5刷新页面?你是不是发现你的新增,修改,删除操作被重复执行?如果你的新增,修改,删除操作时提交到servlet中,那在你刷新的时候,页面是不是给出一个重复提交数据的提示信息呢?
    如果你按照你原有的思路进行提醒?你第一次删除的时候确实可以给出alert的提示信息,但是此时你刷新,是不是每次都会alert提醒????
    看来你还是个新手....不过没事....继续努力,多思考多尝试吧,加油
      

  12.   

    1,可以在请求删除之前提示删除成功
    2,可以在删除后返回一个boolean值在前台 用ognl表达式或者el表达式进行判断 给出提示信息
    3,最好的办法是通过异步提交,用$.ajax或者$.post请求实现
      

  13.   

    楼主可以在action中删除成功之后进行提示,用out.print("<script>alert('删除成功');window.location.href='http://localhost:8081/DEMO/text.jsp'</script>");
    http://localhost:8081/DEMO/text.jsp这个地址是我随意写的,可根据你的实际情况更改,或者可以不直接跳转这个jsp而跳转其他action都是可以的