张西军 2008-08-28 18:14
浏览 235
已采纳

上手ajax遇到的问题

问题在注释中。谢谢!
[code="html"]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">



Insert title here function doCaculate() { var f = document.form1; if ((f.number_1.value != "") && (f.number_2.value != "")) { document.getElementById("feedback").innerHTML = "正在计算,请稍候..."; send_request("process.jsp?number_1="+f.number_1.value+ "&number_2="+f.number_2.value); } else if (f.number_1.value == "") { document.getElementById("feedback").innerHTML = "乘数不能为空。"; } else if (f.number_2.value == "") { document.getElementById("feedback").innerHTML = "被乘数不能未空。"; } } var http_request = false; function send_request(url) { http_request = false; if (window.XMLHttpRequest) { http_request = new XMLHttpRequest(); if (http_request.overrideMimeType) { http_request.overrideMimeType('text/xml'); } } else if (window.ActiveXObject) { try { http_request = new ActiveXObject("Msxml2.XMLHttp"); } catch (e) { try { http_request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!http_request) { window.alert("不能创建XMLHttpRequest对象实例."); return false; } http_request.onreadystatechange = processRequest; http_request.open("GET", url, true); http_request.send(null); } function processRequest() { var f = document.form1; if (http_request.readyState == 4) { if (http_request.status == 200) { var returnStr = http_request.responseText; if (returnStr.indexOf("Error") == -1) { alert(returnStr); // 这儿得到returnStr怎么是html?还要自己解析才能等得到计算值吗? document.getElementById("feedback").innerHTML = returnStr; f.result.value = returnStr; } else { f.result.value = ""; document.getElementById("feedback").innerHTML = returnStr; } } else { alert(http_request.status); alert("您所请求的页面有异常."); } } }





简单乘法计算










*

=

 
 

 xx



[/code]
[code="java"]<%@ page language="java" contentType="text/html; charset=gb2312"
pageEncoding="gb2312"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">



Insert title here


<%
String number_1 = request.getParameter("number_1");
String number_2 = request.getParameter("number_2");
int num_1 = 0, num_2 = 0;
boolean status = true;
if (number_1 != null) {
try {
num_1 = Integer.parseInt(number_1);
}
catch (Exception ex) {
status = false;
out.println("Error,乘数必须是整数.");
}
}
if (number_2 != null) {
try {
num_2 = Integer.parseInt(number_2);
}
catch (Exception ex) {
status = false;
out.println("Error,被乘数必须是整数.");
}
}
if (status) out.println(num_1*num_2);
%>

[/code]
  • 写回答

1条回答 默认 最新

  • iteye_17163 2008-08-28 18:37
    关注

    这里的Ajax请求得到的响应文本,是执行完JSP之后所返回的html代码,所以你的JSP页面整体输出什么,它的值就是什么。
    由于你的页面中包含的、

    等标签,所以返回的页面中同样也包含了这些标签,输出的值自然就是html了。
    若只想得到结果,只要保留JSP页面的这一部份就好了:
    [code="java"]
    <%@ page language="java" contentType="text/html;charset=gb2312" pageEncoding="gb2312"%>
    <%
    String number_1 = request.getParameter("number_1");
    String number_2 = request.getParameter("number_2");
    int num_1 = 0, num_2 = 0;
    boolean status = true;
    if (number_1 != null) {
    try {
    num_1 = Integer.parseInt(number_1);
    }
    catch (Exception ex) {
    status = false;
    out.println("Error,乘数必须是整数.");
    }
    }
    if (number_2 != null) {
    try {
    num_2 = Integer.parseInt(number_2);
    }
    catch (Exception ex) {
    status = false;
    out.println("Error,被乘数必须是整数.");
    }
    }
    if (status) out.println(num_1*num_2);
    %>[/code]
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?