javascript - underscore.js如何获取html中input的value
迷茫
迷茫 2017-04-11 11:51:06
[JavaScript讨论组]

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){ %>'
        + '<p 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>'
        + '<p class="adsDsDv">'
        + '<span><%=item.consignee%> <%=item.phone%></span>'
        + '<p>'
        + '<span><%=item.details%></span>'
        + '</p>'
        + '</p>'
        + '</p>'
        + '<%})%>';
    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值解析成字符串,这样链接就可以跳转了。
为此困恼了好几个小时了……
先感谢大家的解答,谢谢了!

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(1)
黄舟

最终解决了问题:

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代码,就传值。一般是这种套路。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号