400 8949 560

NEWS/新闻

分享你我感悟

您当前位置> 主页 > 新闻 > 技术开发

HTML 中如何正确使用模板变量动态设置元素 name 属性

发表时间:2025-12-31 00:00:00

文章作者:碧海醫心

浏览次数:

在模板引擎中动态设置 html 元素的 name 属性时,需确保模板变量被正确包裹在英文双引号内,否则浏览器无法识别该属性,javascript 也无法通过选择器(如 $("[name='updatedt']"))定位元素。上述问题的根本原因正是遗漏了引号,导致生成的 html 类似

—— 浏览器将其视为无值属性或非法语法,实际不渲染 name 值。

以下是修正后的完整模板代码示例:

[% FOREACH field IN ['id','type','updatedt','lastcheckdt'] %]
    
        
[% order.$field %]
[% END %]

关键修改点:

—— 双引号包裹模板变量,确保输出为
...

—— 缺少引号,易被解析为
,name 属性值丢失。

随后,JavaScript 即可正常操作对应元素:

// 正确获取并格式化时间字段
let dt_formatted = convertDateFormat("[% order.updatedt %]");
$("[name='updatedt']").text(dt_formatted); // 注意:dd 是标签,用 .text() 而非 .val()

// 同理可操作其他字段
$("[name='id']").text("[% order.id %]");

⚠️ 注意事项:

  • 是块级内容标签,不支持 value 属性,因此应使用 .text() 或 .html() 更新内容,而非 .val();
  • 若后续需提交表单,name 属性对
    无效(仅表单控件如
  • 模板变量插值必须严格位于引号内,且避免空格或特殊字符未转义(如 field 值含单引号时,推荐统一用双引号包裹)。

总结:模板中动态属性值 = 引号 + 模板语法,这是保障 HTML 结构合法与 JS 可交互的基础前提。

立即学习“前端免费学习笔记(深入)”;

相关案例查看更多