JavaScript调用服务器端计算?

时间:2017-03-31 09:28:16

标签: javascript json ajax dom

**编辑后的初始问题基本上意味着:**

我正在尝试学习如何在JavaScript中添加服务器端计算。

要调用服务器端计算,我认为我需要使用AJAX技术。但我仍然不确定我应该对返回值采用何种形式的数据交换?

**几个月后补充:**

答案是:需要网页/路线。一个(称之为"一个")与用户交互,另一个(称之为" b")来执行计算。 a通过ajax请求(XmlHttpRequest)调用b。 b执行计算并输出JSON对象。 a读取JSON对象并相应地更新其DOM以输出结果。

1 个答案:

答案 0 :(得分:1)

处理更新和插入的伪代码示例,无需重新加载整个内容。

var number1 = document.getElementById('number1');
var number2 = document.getElementById('number2');
var modifiedExample = document.getElementById('modifiedExample');
var insertedExample = document.getElementById('insertedExample');
var ajaxHandle;

function something() {
  //I use timeout instead of AJAX, since i dont actually have a server to poll but it should be pretty interchangeable
  clearTimeout(ajaxHandle);
  var n1 = parseInt(number1.value, 10);
  var n2 = parseInt(number2.value, 10);
  ajaxHandle = setTimeout(function() {
    modifiedExample.value = n1 + n2;
    insertedExample.appendChild(document.createElement("li")).innerHTML = n1 + n2;
  }, 100 + 500 * Math.random());
}
<form>
  Number 1: <input type="number" value="0" id="number1" onchange="something()" /><br/>
  Number 2: <input type="number" value="0" id="number2" onchange="something()" /><br/>
  Result: <input type="number" value="0" id="modifiedExample" readonly/>
</form>

<ul id="insertedExample">
  <li>Results are inserted here</li>
</ul>