我需要在特定日期使 XML 节点过期。我在 XML 节点中添加了过期日期。但我不知道如何使用 JavaScript 在节点过期时自动删除该节点。如果有人有任何想法,请帮忙。
这是代码。
contact.xml
<?xml version="1.0" encoding="UTF-8"?>
<contact>
<person expires="19/09/2018">
<name>Bob Jones</name>
<phone>(02)44 42 45 63</phone>
</person>
<person expires="21/09/2018">
<name>Gary Williams</name>
<phone>(02)44 41 87 56</phone>
</person>
</contact>
$(document).ready(function(){
$.ajax({
type:"GET",
url:"contact.xml",
dataType:"xml",
success:showdata
});
});
function showdata(xml){
xml = $(xml).children();
$(xml).children().each(function () {
let name = $(this).find("name").text();
let phone =$(this).find("phone").text();
let html = `<div class="col-md-4">
<div class="thumbnail">
<p>${name}</p>
<p>${phone}</p>
</div>
</div>`;
$("#test").append(html);
});
}
<div class="row" id="test"></div>
最佳答案
这个怎么样?
function showdata(xml){
xml = $(xml).children();
$(xml).children().each(function () {
let expireArray = $(this).attr('expires').split('/');
const expireDate = `${expireArray[2]}${expireArray[1]}${expireArray[0]}`;
const now = new Date(),
nowDate = `${now.getFullYear()}${(now.getMonth()+1) <10 ? '0'+(now.getMonth()+1): (now.getMonth()+1)}${now.getDate()}`;
if (nowDate > expireDate) {
return;
}
let name = $(this).find("name").text();
let phone =$(this).find("phone").text();
let html = `<div class="col-md-4">
<div class="thumbnail">
<p>${name}</p>
<p>${phone}</p>
</div>
</div>`;
$("#test").append(html);
});
}
关于javascript - 如何使用js使XML节点在特定日期过期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52419406/