Javascript 比较文档元素值的更改

Javascript 比较文档元素值的更改,javascript,Javascript,我需要检查文档元素值在使用Javascript执行特定操作后是否发生了更改 我的要求是: 更改特定日期元素后,文档元素包含默认值 有一些Ajax操作文档元素值发生更改 这将返回所有文档元素,然后将其存储到数组中 document.body.getElementsByTagName('*'); 我想使用java脚本找出请求后哪些元素值发生了更改,我建议您在操作发生之前序列化元素和值,然后在该过程之后将序列化数据与活动元素进行比较 序列化非常容易: function serialize() {

我需要检查文档元素值在使用Javascript执行特定操作后是否发生了更改

我的要求是:

  • 更改特定日期元素后,文档元素包含默认值
  • 有一些Ajax操作文档元素值发生更改
这将返回所有文档元素,然后将其存储到数组中

document.body.getElementsByTagName('*');

我想使用java脚本找出请求后哪些元素值发生了更改,我建议您在操作发生之前序列化元素和值,然后在该过程之后将序列化数据与活动元素进行比较

序列化非常容易:

function serialize() {
  var output = "";
  for (var i = 0; i < document.myForm.elements.length; i++) {
    name   = document.myForm.elements[i].name;
    value  = document.myForm.elements[i].value;
    output = output + name + "=" + value + "&";
  }
  alert(output);
}
函数序列化(){
var输出=”;
for(var i=0;i
使用ajax,可以使用GetXmlHttpObject()在javascript中进行两种类型的调用:异步调用和同步调用。执行“打开”调用时,第三个参数将同步设置为布尔值。即:

     xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request");
        return;
    }
    var querystring_variables = create_request_string(theform);
    var url= scriptPage + "?" + querystring_variables + "&time=" + timestamp;
    xmlHttp.onreadystatechange=stateChanged;
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
True表示同步,false表示异步

基本上,ajax调用应该填充网页上的div或文本框。如果异步执行调用并执行a调用以检查返回的值,则javascript将过早运行,javascript调用读取的值将作为nothing返回


如果同步执行,读取值的javascript函数将等待ajax返回值,然后再执行。

需要不使用jquery执行此普通java脚本