在模板引擎中动态设置 html 元素的 name 属性时,需确保模板变量被正确包裹在英文双引号内,否则浏览器无法识别该属性,javascript 也无法通过选择器(如 $("[name='updatedt']"))定位元素。上述问题的根本原因正是遗漏了引号,导致生成的 html 类似
以下是修正后的完整模板代码示例:
[% FOREACH field IN ['id','type','updatedt','lastcheckdt'] %]
关键修改点:
✅
随后,JavaScript 即可正常操作对
应元素:
// 正确获取并格式化时间字段
let dt_formatted = convertDateFormat("[% order.updatedt %]");
$("[name='updatedt']").text(dt_formatted); // 注意:dd 是标签,用 .text() 而非 .val()
// 同理可操作其他字段
$("[name='id']").text("[% order.id %]");⚠️ 注意事项:
总结:模板中动态属性值 = 引号 + 模板语法,这是保障 HTML 结构合法与 JS 可交互的基础前提。