underscore.js如何获取html中input的value

发布于 2022-09-03 09:05:47 字数 1609 浏览 16 评论 0

html代码

<input type="hidden" id="orderId" data-th-value="${order.id}"/>

这是thymeleaf模板语言获取后端数据order.id

我需要在js中,获取到

order.id拼接到a链接的href属性。

拼接时用的是underscore.js写法:

    var tpl = '<%_.each(data, function(item,index){ %>'
        + '<div class="rltvPst adhtDv" adid="<%=item.id%>">'
        + '<%if(index==0){%>'
        + '<a href="/order/payment/<%=_(orderId).value()%>?addressId=<%=item.id%>"><i class="selected defaulti"></i></a>'
        + '<%}else{%>'
        + '<i class="un_selected defaulti"></i>'
        + '<%}%>'
        + '<i  class="editads defaulti"></i>'
        + '<div class="adsDsDv">'
        + '<span><%=item.consignee%> <%=item.phone%></span>'
        + '<div>'
        + '<span><%=item.details%></span>'
        + '</div>'
        + '</div>'
        + '</div>'
        + '<%})%>';
    var html = _.template(tpl)({data: rel});

但是无法使用jquery,js的写法,拼接变量的形式,

<a href="/order/payment/<%=_(orderId).value()%>?addressId=<%=item.id%>"><i class="selected defaulti"></i></a>

中直接写<%=orderId%>或者<%=_(orderId).value()%>都是解析成:

<a href="/order/payment/[object HTMLInputElement]?addressId=70l4ojp8"><i class="selected defaulti"></i></a>

我是希望能获取input的value值解析成字符串,这样链接就可以跳转了。
为此困恼了好几个小时了……
先感谢大家的解答,谢谢了!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

没︽人懂的悲伤 2022-09-10 09:05:47

最终解决了问题:

var html = _.template(tpl)({data: rel,orderId:document.getElementById('orderId').value});

'<a href="/order/payment/<%=orderId%>?addressId=<%=item.id%>"><i class="selected defaulti"></i></a>'

不支持在tpl里写js代码,就传值。一般是这种套路。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文