post方式AJAX

w3c对post()方式的定义

这里写图片描述

post()方式是jquery封装的AJAX,使用起来比传统的AJAX要简洁.适用于大部分开发需求.


JS Demo

//提交审核
function toChecked(documentId){
    $.dialog.confirm('您确定提交至财务审核么?', function(r) {
            var url = "projectMainAttController.do?submitToChecked";
            var data = {documentId:documentId};
            $.post(url,data,function(res){
                var resObj=$.parseJSON(res);//如果指定post的JSON参数,则不用转换
                if(resObj.success){
                    window.location.reload();//刷新页面
                }
            })
        });
}

后台代码.开发语言JAVA.MVC框架是SpringMVC.

controller代码

/**
     * 提交审核
     * 
     * @return
     */
    @RequestMapping(params = "submitToChecked")
    @ResponseBody
    public AjaxJson submitToChecked(String documentId, HttpServletRequest request) {
        String message = null;
        AjaxJson j = new AjaxJson();
        ProjectMainAttEntity projectMainAtt = systemService.getEntity(ProjectMainAttEntity.class, documentId);
        projectMainAtt.setCheckedStatus("1");
        message="提交审核成功!";
        try{
            projectMainAttService.updateEntitie(projectMainAtt);
            systemService.addLog(message, Globals.Log_Type_DEL, Globals.Log_Leavel_INFO);
        }catch(Exception e){
            e.printStackTrace();
            message="提交审核失败!";
            throw new BusinessException(e.getMessage());
        }
        j.setMsg(message);
        return j;
    }

注意!

JSON方式的请求,在对应的方法上要加@responseBody 标签

返回类型是一个常用的AJAX工具类

AJAX工具类(并生成getter/setter)

private boolean success = true;// 是否成功
private String msg = "操作成功";// 提示信息
private Object obj = null;// 其他信息
private Map<String, Object> attributes;// 其他参数
### 解决 ASP.NET MVC 中 AJAX 提交后页面未更新的问题 当使用 AJAX 进行 POST 请求时,服务器端处理完成后不会自动刷新整个页面。为了实现部分页面更新的效果,通常有几种解决方案。 #### 使用 `$.ajax` 方法并手动更新 DOM 可以利用 jQuery 的 `$.ajax()` 函数发送异步请求到服务器,并在成功回调函数中修改特定区域的内容: ```javascript $.ajax({ url: '@Url.Action("ActionName", "Controller")', type: 'POST', data: JSON.stringify(model), contentType: 'application/json; charset=utf-8', success: function (result) { $('#targetElement').html(result); // 更新目标元素内的HTML内容 }, error: function () { alert('An unexpected error occurred.'); } }); ``` 此代码片段展示了如何构建一个简单的 AJAX 调用来执行 POST 操作并将响应数据注入指定的选择器内[^1]。 #### 利用 Partial View 实现局部渲染 如果希望只重新加载页面的一部分而不是全部,则可以在控制器返回 PartialViewResult 类型的结果来代替完整的视图。这样做的好处是可以减少传输的数据量并且提高用户体验流畅度。 例如,在控制器中有如下定义的动作方法: ```csharp public ActionResult UpdatePartialView() { var reservations = GetReservations(); return PartialView("_ReservationList", reservations); } ``` 而在对应的 JavaScript 文件里可以通过上述提到的方式获取这部分内容并替换掉原有节点下的子级DOM结构[^3]. 另外值得注意的是HTTP协议本身不具备状态保持能力,这意味着每次浏览器发起新的请求都会被当作独立事件对待;因此开发人员需自行决定怎样关联这些看似孤立的操作以便于维护应用逻辑的一致性和连贯性[^2].
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值