我在自己的项目中,当我添加数据的时候!第一次页面没有显示“添加数据成功”,数据库里面有添加的数据,当你第二次添加数据的时候页面就提示了“数据添加成功”,在往后几次都能显示添加成功,可是我从新打开页面还是原来的问题?我检查了我的代码没有错误,到底是哪里的问题呢?请各位给我好好想想下思路 重谢100分!

解决方案 »

  1.   

    是ajax么?什么情况下会返回?返回添加失败正常么?异常有规律么?别人机器运行是什么样的?清缓存,重启服务,再测。
      

  2.   

    恩 ajax! 在蹦出添加成功才返回,异常有规律就是第一次不行,第二次就行了!别人机器也是这样我试了,缓存我也清了。服务我删了重启还是那样
      

  3.   

    我把Action的代码给你们看看
    public class SourceAction extends GenericAction{
         /** 
          * 属性     
          */
    private String id;
    private String sourceSetout;
    private String sourceType;
    private String sourceWeight;
    private String sourceVolume;    
    private String sourceContact;
    private String sourceTelephone;
    private String sourceMobile;
    private String sourceRelease;
    private String[]ids;
    private List<Source> sourceList;
    private Source source;
    private ResultInfo resultInfo;//返回对像

    private ISourceService sourceService;
    public void setSourceService(ISourceService sourceService) {
    this.sourceService = sourceService;
    }
           /**
            * 转向保存页面
            */

    //判断返回页面时候是否为空 
    public String goEdit() throws Exception{  
    sourceList = new ArrayList<Source>();
    List<Source> temp = sourceService.getSources();  //ListFANGFA 
    if(temp == null){
    sourceList = new ArrayList<Source>();
    }else{
    sourceList =  sourceService.getSources();
    }

    if (id != null && !"".equals(id)) {
    source = sourceService.getSource(id);
    sourceSetout = source.getSourceSetout();
    sourceType = source.getSourceType();
    sourceWeight = source.getSourceWeight();
    sourceVolume = source.getSourceVolume();
    sourceContact = source.getSourceContact();
    sourceTelephone = source.getSourceTelephone();
    sourceMobile = source.getSourceMobile();
    sourceRelease = source.getSourceRelease();
    }
    return AppConstants.RETURN_TYPE_FREEMARKER;


    }
    /**
     * 添加信息           
     */
    public String doEdit() throws Exception{
    resultInfo = new ResultInfo();
    source = new Source();
    source.setSourceSetout(sourceSetout);
    source.setSourceType(sourceType);
    source.setSourceWeight(sourceWeight);
    source.setSourceVolume(sourceVolume);
    source.setSourceContact(sourceContact);
    source.setSourceTelephone(sourceTelephone);
    source.setSourceMobile(sourceMobile);
    source.setSourceRelease(sourceRelease);
    sourceService.createSource(source);//保存
    resultInfo.setSuccess(AppConstants.SUCCESS_YES);
    resultInfo.setMessage("添加信息成功");
    return AppConstants.RETURN_TYPE_JSON;
    }
    /**
     * 根据id删除存货信息
     */
    public String doDelete() {
    resultInfo = new ResultInfo();
    sourceService.deleteSource(id);
    resultInfo.setSuccess(AppConstants.SUCCESS_YES);
    resultInfo.setMessage("删除信息成功!");
    return AppConstants.RETURN_TYPE_JSON;
    }
    /**
     *刷新页面 
     */
    /* public String myRefresh() throws Exception{
    List<Source>temp=sourceService.getSources();
       return AppConstants.RETURN_TYPE_FREEMARKER; 
    }*/

    public String goSourceList() throws Exception{
    sourceList = sourceService.getSources();
    return AppConstants.RETURN_TYPE_FREEMARKER;
    }
      

  4.   

    我在AJAX的代码给你们看看!
    $(function(){
       $("#submit").click(function() {  //调用submit方法,添加保存!
    var v = do_source_validate();
    if(v == true) {
    do_source_edit();
    }
       });
    }) 

    function do_source_validate() {
    var Setout = $("#sourceSetout").val();
    var Type = $("#sourceType").val();
    var Weight = $("#sourceWeight").val();
    var Volume = $("#sourceVolume").val();
    var Contact = $("#sourceContact").val();
    var Telephone = $("#sourceTelephone").val();
    var Mobile = $("#sourceMobile").val();
    var Release = $("#sourceRelease").val();
    if(Setout == "") {
    alert("起止点不能为空!");
    return false;
    }
    if(Contact == "") {
    alert("名称不能为空!");
    return false;
    }
    if(Mobile == "") {
    alert("手机不能为空!");
    return false;
    }
    if(Release == "") {
    alert("发布日期不能为空!");
    return false;
    }
    return true;
    }

    function do_source_edit() {
    var params=$('#source_edit_form').serialize(); //这里直接就序列化了表单里面的值;很方便
    $.ajax({
    type:'POST',
    url:'/Source_doEdit.action',
    data:params,
    dataType:'json',  //返回值是一个对象
    error:function(){  
    alert("JQuery AJAX Error!");
    },
    success:function(data){
    var success = data.resultInfo.success;
    var message = data.resultInfo.message;
    alert(message);
    if(success == 0) {//操作失败
    //window.location.reload();
    }
    if(success == 1) {//操作成功
    window.location.href="/Source_goEdit.action";
    }
    }
    }); 
    }
    function do_source_deleteByID(id){
    if(confirm("你确信删除该数据吗?删除后将不可恢复!")) {
    $.ajax({
    type:'POST',
    url:'/Source_doDelete.action',
    data:'id='+id,
    error:function(){
    alert("JQuery AJAX Error!");
    },
    success:function(data){
    var success = data.resultInfo.success;
    var message = data.resultInfo.message;
    alert(message);
    if(success == 0){
    }
    if(success == 1){
    window.location.href="/Source_goEdit.action";
    }
    }
    });
    }
    }
    /*function myRefresh(){
    alert("ok");
    var params=$('#source_list_form').serialize();
    $.ajax({
    type:'POST',
    url:'/Source_myRefresh.action',
    data:params,
    error:function(){
    alert("JQuery AJAX Error!");
    },
    success:function(data){
    $("#source").html(data);
    }
    });
    }*/

    //局部刷新
    function selectSourceList(){
    window.location.href="/Source_goSourceList.action";
    }