定义和用法

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>

随机推荐

  1. 【nodejs】关于 alert 和 document

    Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation.保留所有权利. C:\Windows\system32>n ...

  2. ASP.NET MVC 学习第一天

    今天开始第一天学习asp.net mvc,写的不是很好,高手不要喷,希望大家能一起进步学习. 好了,开始学习 新建项目,选择mvc 4应用程序 接下来选择基本,视图引擎当然要选择Razor,如果在选择 ...

  3. asp.net 多个域名重定向,在web.Config中配置

    一个网站有多个域名,但是需要在访问其中某个域名之后跳转到另一域名. Web.config 中配置 </system.webServer> <!--重定向 域名 开始--> &l ...

  4. SQL索引优化

    序言数据库的优化方法有很多种,在应用层来说,主要是基于索引的优化.本次秘笈根据实际的工作经验,在研发原来已有的方法的基础上,进行了一些扩充,总结了基于索引的SQL语句优化的降龙十八掌,希望有一天你能用 ...

  5. NOIP2015-stone(二分答案)

    这道题在考试时二分答案写炸了,结果得了20分.....同学有用贪心写的(对,贪心!!)都得了30,我感到了深深的恶意.这段时间在忙转语言,现在重新整理一下NOIP的题. 题目来源:vijos 题目如下 ...

  6. windows环境下MySQL重启的命令行说明

    ctrl+r 弹出运行框,输入cmd,然后再控制太输入命令: 1.点击“开始”->“运行”(快捷键Win+R). 2.停止:输入 net stop mysql 3.启动:输入 net start ...

  7. 给同一个表中的两个外键写sql

    一个表有两个外键都指向另一个表的主键时,如何检索他们的数据? 例如,表TableA有两个列,puserID和friendID. 表TableB有两个列,userID和userName. 我们怎样检索数 ...

  8. SQL Server表分区【转】

    转自:http://www.cnblogs.com/knowledgesea/p/3696912.html SQL Server表分区   什么是表分区 一般情况下,我们建立数据库表时,表数据都存放在 ...

  9. cookieContainer应用

    PublicSharedFunctionGetCookiesSetByPage(ByVal strUrl AsString,ByVal cookieToProvide AsString)AsIEnum ...

  10. myeclipse一直bulid workspace 的解决

    解决方法转自: http://zhidao.baidu.com/link?url=gCj0XzorUUshtSFG2jXh6-Bxn28_LpcbTYasbgk9Qja_kw8Ex2kLzxFSYHN ...