zoukankan      html  css  js  c++  java
  • $.post()

    定义和用法

    post() 方法通过 HTTP POST 请求从服务器载入数据。

    jQuery.post(url,data,success(data, textStatus, jqXHR),dataType)

    参数描述
    url 必需。规定把请求发送到哪个 URL。
    data 可选。映射或字符串值。规定连同请求发送到服务器的数据。
    success(data, textStatus, jqXHR) 可选。请求成功时执行的回调函数。
    dataType

    可选。规定预期的服务器响应的数据类型。

    默认执行智能判断(xml、json、script 或 html)。



    项目中:
    页面代码:
    <script src="${ctx}/js/jquery.js" type="text/javascript"></script>
     

       <script type="text/javascript">
            $(document).ready( function() {
            //使用 Ajax 的方式 检查分类名是否存在
            $("#result").hide();
            $("#name").keyup( function() {
                var url = '${ctx}/manage/example/gradeAjax.action';
                //获取表单值,并以json的数据形式保存到params中
                var params = {
                    name:$("#name").val()
                    //上行结尾决对不加逗号(,)。如果加了在IE6下就不能运行实现了。
                };
                //alert(params.name);
                //使用$.post方式
                $.post(
                    url,        //服务器要接受的url
                    params,     //传递的参数
                    function cbf(data){ //服务器返回后执行的函数 参数 data保存的就是服务器发送到客户端的数据
                        var a = eval_r("("+data+")");    //包数据解析为json 格式
               //eval_r() 函数可计算某个字符串,并执行其中的的 JavaScript 码                       if(a.existed == "0"){
                            //$('#name').focus();// $('#name')[0].focus();
                            //$('#name').val($("#name").val());
                            $("#result").hide();
                            //setTimeout("$('#result').hide();",1000);//1秒
                        }else{$("#result").show();}
                    },
                   'json'   //数据传递的类型  json
                );
            });
        });
       </script> 


    。。。。
    <tr>
                      <td class="item">班级名</td>
                      <td><input type="text" id="name" name="name" /><span id="result" style="color:red;font-size:12;">班级名已存在</span></td>
                  </tr>

    后台:
    @SuppressWarnings("serial")
    public class GradeAjaxAction extends ActionSupport {
        private final Log log = LogFactory.getLog(getClass());

        private String name;
        private String result;

        @Autowired
        @Qualifier( "gradeServiceImpl")
        private GradeService gradeService;

        @Override
        public String execute() throws Exception {
            log.debug(name);
            // 用一个Map做例子
            Map<String, String> map = new HashMap<String, String>();
            log.debug(name);
            boolean b = this.gradeService.isExistName(name);
            log.debug(b);
            // 为map添加一条数据,记录一下页面传过来name
            map.put("existed", b ? "1" : "0");
           log.debug("map:" + map);
            // 将要返回的map对象进行json处理
            JSONObject jo = JSONObject.fromObject(map);
            log.debug("jo:" + jo);

            // 调用json对象的toString方法转换为字符串然后赋值给result
            this.result = jo.toString();

            // 可以测试一下result
            log.debug("result:" + this.result);

            return SUCCESS;
        }

        public String getResult() {
            return result;
        }

        public void setName(String name) {
            this.name = name;
        }

    }

    配置文件中:
    <action name="gradeAjax" class="com.goldsoft.action.example.GradeAjaxAction">
                <!-- 返回类型为json, 在struts2-json-plugin-2.2.3.jar->struts-plugin.xml中定义 --> 
                <result type="json"> 
                    <!-- root的值对应要返回的值的属性 --> 
                    <!-- 这里的result值即是 对应action中的 result --> 
                    <param name="root">result</param> 
                </result> 
            </action>
  • 相关阅读:
    HDU 5912 Fraction (模拟)
    CodeForces 722C Destroying Array (并查集)
    CodeForces 722B Verse Pattern (水题)
    CodeForces 722A Broken Clock (水题)
    CodeForces 723D Lakes in Berland (dfs搜索)
    CodeForces 723C Polycarp at the Radio (题意题+暴力)
    CodeForces 723B Text Document Analysis (水题模拟)
    CodeForces 723A The New Year: Meeting Friends (水题)
    hdu 1258
    hdu 2266 dfs+1258
  • 原文地址:https://www.cnblogs.com/felix-/p/4330407.html
Copyright © 2011-2022 走看看