我希望能够获取变量 view_data_id 的值并将其存储在另一个名为 view_data_id_fk 的变量中。
最后一行代码似乎对我不起作用,所以我想知道我该怎么做?
var view_data_id = val['view_data_id'];
// How to obtain the value of view_data_id?
<td><a href="datamapmain.php?view_data_id='+view_data_id+'"
class="link">Link</a></td>
//Will be passed on to ajax file
view_data_id_fk:$('.link').val();
最佳答案
您可以使用 jQuery 和 attr(..)
方法(或仅标准 JavaScript)和正则表达式获取值:
jQuery:
var q = $('.link').attr('href').match(new RegExp('[?&]view_data_id=([^&#]*)'));
var view_data_id_fk = q ? q[1] : '';
标准 JavaScript:
var q = document.querySelector('.link').href.match(new RegExp('[?&]view_data_id=([^&#]*)'));
var view_data_id_fk = q ? q[1] : '';
[编辑,感谢 Alexei Levenkov]
有一个标准的方法可以做到这一点,使用 URLSearchParams
api,但它对浏览器的支持有限(caniuse,MDN):
var q = new URLSearchParams(document.querySelector('.link').href).get('view_data_id');
var view_data_id_fk = q || '';
关于javascript - 从 href 属性获取查询字符串参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53902124/