我想在我的网页中获取href
标记a
属性中存在的ID。我想首先阻止发布后页,然后执行此操作。
a标签如下:
'<a href="/ArtPlaces/Delete/5">حذف</a>'
$('a:contains("حذف")').click(function (e) {
e.preventDefault();
var href = this.href;
var splitHref = href.split("/");
var inedxDelete = splitHref.length - 1;
var id = splitHref[inedxDelete];
alert(id);
});
TypeError:this.href不是函数
我想在href属性中获取5
号码。请提供建议
答案 0 :(得分:2)
而是使用.getAttribute()
或.attr()
,您可以使用[].pop()
方法返回数组中最后添加的项目,因此您不必计算索引它的。
$('a:contains("حذف")').click(function(e) {
e.preventDefault();
var href = $(this).attr('href');
var num = href.split("/").pop(); // will give you last value of array.
alert(num);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="/ArtPlaces/Delete/5">حذف</a>'
&#13;
使用带.match()
方法的正则表达式:
$('a:contains("حذف")').click(function(e) {
e.preventDefault();
var href = $(this).attr('href');
var num = href.match(/\d+/g)[0];
alert(num);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="/ArtPlaces/Delete/5">حذف</a>'
&#13;
答案 1 :(得分:1)
您的代码对我有用。要5
使用下面给出的代码
var splitHref = href.split("/")[5]
正如Jai在评论中所说的那样
this.attr(&#39; href&#39;)无法正常工作,但由于jQuery方法仅适用于jQuery对象,因此会产生错误。
<强>样本强>
$('a:contains("حذف")').click(function (e) {
e.preventDefault();
var href = this.href;
var splitHref = href.split("/")[5]
//var inedxDelete = splitHref.length - 1;
//var id = splitHref[inedxDelete];
alert(splitHref);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="/ArtPlaces/Delete/5">حذف</a>
&#13;