使用jquery验证文本框值服务器端

时间:2012-05-29 21:38:32

标签: jquery struts2

当用户在文本框中输入模糊值时,我有订单列表我想在服务器端验证该值,然后根据服务器的true或false显示正确或错误的图标。我正在使用struts2,jquery。

我在ajax中很穷,所以请尽可能详细地回答我的问题

提前致谢。

更新感谢您的回复,我尝试了Fluidbyte解决方案,但作为回应,我得到了整个HTML。我在不同地方的参赛作品如下。

struts.xml中

<action name="validate" class="orders" method="validate"/>

JSP

<td><s:textfield name="serial" id="serial" theme="simple"/></td>
<td><SPAN id="result"></SPAN> </td>

动作类

public String validate() {
result = myOrdSvc.validate(value);
return SUCCESS;
}

/**
 * @param result
 *            the result to set
 */
public void setResult(String result) {
    this.result = result;
}

/**
 * @return the result
 */
public String getResult() {
    return result;
}

orders.js

         $('#serial').blur(function(){
            $.post('validate',{ value: $(this).val() },function(data){
               $("#result").html(data);
            });
        });

结果“数据”完全是一个HTML,而不仅仅是“true”“false”我将返回。

3 个答案:

答案 0 :(得分:0)

从服务器端获得响应非常容易:

$('input').blur(function(){
    $.post('path/to/file.ext',{ value: $(this).val() },function(data){
       // 'data' is whatever the server returns...
    });
});

在服务器端,您将获得一个名为&#39; value&#39;的POST。然后你可以评估。

回调函数返回&#39;数据&#39;其中包含脚本返回的内容

答案 1 :(得分:0)

对服务器页面进行jQuery ajax调用,让服务器给出响应并根据该节目显示相关图像

$(function(){

  $("#txtUserName").keyup(function(){
    $.get("someserverpage.php?key="+$(this).val(),function(data){
      //check value in data variable and do whatever you want to do (show hide image)
    });

  });    

});

答案 2 :(得分:0)

Fluidbyte解决方案外,Action类的更改为

再次感谢Fluidbyte

1)将返回类型更改为void

2)使用PrintWriter将结果写入jsp。

public void validate() {
   result = myOrdSvc.validate(value);
   PrintWriter writer = ServletActionContext.getResponse().getWriter();
   writer.write(result);
}