tiger105
tiger105
  • 发布:2014-12-04 18:02
  • 更新:2014-12-04 19:25
  • 阅读:3496

app中如何使用ajax

分类:HTML5+

请教一个HTML5 写作app时ajax使用方面的问题,我现在的目标是:

1、在页面中输入2个数值;
2、点击一个按钮;
3、将这2个数值透过AJAX的方式传到一个服务器的PHP程序;
4、该程序计算这2个数值的和,然后返回结果。
5、把结果显示出来。

我写的代码如附件,但在运行时显示:Uncaught ReferenceError: plus is not defined
在第16行:xmlHttp=new plus.net.XMLHttpRequest();

请问:
1、写作的代码正确不?
2、应该在什么样的环境中调试程序?

其代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<script type="text/javascript">

var xmlHttp=null;

function testAjax()
{
var send_string= "num1="+document.getElementById("num1").value;
send_string = send_string + "&num2="+document.getElementById("num1").value;
alert(send_string);

if (xmlHttp) return;
xmlHttp=new plus.net.XMLHttpRequest();
xmlHttp.onreadystatechange=xmlHttpStatechange;

send_string= encodeURI(send_string);
xmlHttp.open("POST", "http://127.0.0.1/php/add.php", true);
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttp.onreadystatechange = UpdateResult;
xmlHttp.send(send_string);

}

function UpdateResult()
{
if (xmlHttp.readyState == 4)
{
var response = xmlHttp.responseText;
document.getElementById("Result").innerHTML = response;
}
}

function xmlHttpStatechange(){
switch( xmlHttp.readyState ) {
case 0:
console.log( "xmlHttp请求已初始化" );
break;
case 1:
console.log( "xmlHttp请求已打开" );
break;
case 2:
console.log( "xmlHttp请求已发送" );
break;
case 3:
console.log( "xmlHttp请求已响应");
break;
case 4:
if ( xmlHttp.status == 200 ) {
console.log( "xmlHttp请求成功:"+xmlHttp.responseText );
} else {
console.log( "xmlHttp请求失败:"+xmlHttp.readyState );
}
break;
default :
break;
}
}

</script>
</head>
<body>
<input type="number" id="num1" value="10"/> +
<input type="number" id="num2" value="10"/> =
<input type="number" id="Result" value=""/> <BR>
<button onclick="testAjax()">Abort XMLHttpRequest</button>
</body>
</html>

2014-12-04 18:02 负责人:无 分享
已邀请:
DCloud_heavensoft

DCloud_heavensoft

你需要在plus的ready之后再调用plus,否则plus这个对象还没加载完毕,就被调用,就会提示undefined

该问题目前已经被锁定, 无法添加新回复