javascript - 如何在javascript中获取href的值
问题描述
我通过json将数据从控制器发送到javascript,json看起来像这样:
UsernameError: "<p>Username not valid, please</p><a href="www.google.com"> click here</a> <p>to validate it.</p>"
我将其转换为原始 html,使其看起来像:
UsernameError: "<p>Username not valid, please</p><a href="www.google.com"> click here</a> <p>to validate it.</p>"
当我试图获得我所拥有的东西href
时
var href = $(decoded[0].innerText).attr('href');
即将到来undefined
,但如果我只a
在 json 中有标签,则在变量中设置 href 值。
如果我在 json 中有更多标签,知道为什么我无法获得 href 值吗?
解决方案
如果您真的想将内容处理为真正的 html 元素,您可以使用 jquery 创建一个虚拟 html 元素并使用 find-method 搜索 a-tag。
let decodedString = '<p>Username not valid, please</p><a href="www.google.com"> click here</a> <p>to validate it.</p>';
let htmlContent = $('<div/>').html(decodedString);
let href = htmlContent.find('a').attr('href');
console.log(href);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
推荐阅读
- reactjs - mui DataGrid 滚动条在 columnHeader 上不起作用
- android - '导航' 未定义 | 反应原生 | 安卓 | 在 App.js 文件中
- java - 如何创建自定义 c3p0 ComboPooledDataSource 并在 tomcat context.xml 中引用
- php - 将 php 7.4.3 升级到 php 7.4.8
- ebay-api - eBay API findCompletedItems 替换/解决方法
- node.js - 如何在启动时集成测试用户数据脚本的 AWS EC2 执行?
- javascript - 如何使用动态引用触发输入文件
- python - 在二进制模式Python中通过变量打开文件名
- swift - 无法从包含多个扩展字素簇的字符串中形成字符
- css - 在本机反应中溢出-y