我正在转换以 24 小时时间 (19:13:00) 形式输入的 PhP 数据,并将其更改为晚上 7:13 输出,并且我有一个函数,当我执行 document.write( timeString),但是当我执行innerHTML时,我看到的所有内容都是上午6:00。
console.log(timeString) => correct
console.log(typeof timeString) => string
document.write(timeString) => correct string
document.getElementById('testingSpan').innerHTML = timeString => 6:00am ?????
不知道我还能尝试什么来将正确的值输出到我的 HTML
var testingSpans = document.getElementsByClassName('testingSpan');
var timeinString = <?= json_encode($view_variable, JSON_HEX_TAG); ?>;
var H = +timeinString.substr(0, 2);
var h = (H % 12) || 12;
var ampm = H < 12 ? "AM" : "PM";
timeinString = h + timeinString.substr(2, 3) + ampm;
document.write(timeinString); //outputs correct string
for (var kk = 0; kk < testingSpans.length; kk++) {
testingSpans[kk].innerHTML = timeinString; //outputs 6:00am no matter what
}
最佳答案
所以我最终通过使用createElement() 并将innerHTML 设置为我的javascript 函数中的timeString 来解决我的问题,然后使用appendChild() 将其添加到我的html 中。
关于javascript document.write 和 insideHTML 输出不同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57729010/