如何将变量赋值给元素name属性以访问并修改元素值?
解决方法
1. 修复name属性的渲染问题
你模板里的<dd>标签name属性没有给值加引号,HTML规范要求属性值必须用单引号或双引号包裹,否则浏览器可能无法正确识别该属性。修改模板中的<dd>代码:
<dd name="[% field %]" class="float-right">[% order.$field %]</dd>
修改后,模板渲染出来的元素会带有正确的name属性(比如<dd name="updatedt" ...>),jQuery选择器$("[name='updatedt']")就能精准匹配到目标元素。
2. 修正元素内容的修改方式
<dd>是普通文本元素,并非表单控件(如input、select),jQuery的val()方法仅适用于表单元素。要修改<dd>的内容,需使用text()(用于纯文本)或html()(支持HTML格式内容)方法:
let dt_formatted = convertDateFormat("[% order.updatedt %]"); $("[name='updatedt']").text(dt_formatted);
如果convertDateFormat返回的是带HTML标记的内容,就把text()替换成html()即可。
内容的提问来源于stack exchange,提问作者blackstone
相关产品推荐
相关产品推荐

