日期:2014-05-16  浏览次数:20848 次

返回值是整个界面是怎么回事呢?
我的JS :
 
JScript code

    var xmlHttp; 
 
  function doti(x){
      getXmlHttpRequestObject();
      var url="showValue_selectValue.action?key="+x;
      xmlHttp.open("GET",url,true);
      xmlHttp.onreadystatechange=callback;
      xmlHttp.send(null);
 }
 
 function getXmlHttpRequestObject() { 
        if (window.XMLHttpRequest) { 
            xmlHttp= new XMLHttpRequest(); 
        } else { 
            if (window.ActiveXObject) { 
                  xmlHttp= new ActiveXObject("Microsoft.XMLHTTP"); 
            } else { 
                alert("您的浏览器不支持"); 
            } 
        } 
    } 
  function callback(){
      if(xmlHttp.readyState==4){
          if(xmlHttp.status==200){
             createTextValue();
          }
      }
  }
  
  function createTextValue(){
      var str=xmlHttp.responseText;
           alert(str);
    }
 


我的action 类:

 
Java code

   package com.action;

import java.util.List;

import com.dao.DaoImpl;
import com.opensymphony.xwork2.ActionSupport;

public class ShowValueAction extends ActionSupport{

    
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    private String key;
    private String list;
    private DaoImpl di;
    
    public String getList() {
        return list;
    }

    public void setList(String list) {
        this.list = list;
    }

    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }

    public String selectValue(){
        di=new DaoImpl();
       list=di.selectValue(key);
        return SUCCESS;
    }
}




 我将返回的内容打印出来,总是显示的是JSP界面 ,这是这么回事呢?本人新手,所以很多的地方不是很懂

------解决方案--------------------
后台没有处理ajax请求,返回整个页面

load事件里面
先获取地址栏参数,判断是哪一个请求,然后生成相应的字符串,将字符串写往客户端(C#用Response.Write),要返回的字符串写完后,记得要用终止(C#用Response.End)