我怎样才能得到一些链接

how I can get out some numbers of links

本文关键字:链接      更新时间:2023-09-26

我在jquery 中遇到了一些问题

我有一个问题,那就是我如何才能得到一些数量的链接

我只想从表

id=1293399
id=609876
id=6789234
id=3421

以下链接的

href="/inedx.php?form=11732&id=1293399&min=info_custom
href="/inedx.php?form=11732&id=609876&min=info_custom
href="/inedx.php?form=11732&id=6789234&min=info_custom
href="/inedx.php?form=11732&id=3421&min=info_custom

对此进行了实验,但我不能得到正确的

<script>
    $(function(){
        $("#ABC tr").each(function(){
        var A = $(this).find('td:nth-child(1)').find('a').attr("href");
        var B = $(A).match(/['d]+/d);
        alert(B);
        });
    });
</script>


<body> 
<table id='ABC' border='2'>
<tr>
<td><a href='href="/inedx.php?form=11732&id=1293399&min=info_custom'>AAAy</a></td>
<td>BBB</td>
<td>CCC</td>
</tr>
<tr>
<td><a href='href="/inedx.php?form=11732&id=609876&min=info_custom'>AAAy</a></td>
<td>BBB</td>
<td>CCC</td>
</tr>
<tr>
<td><a href='href="/inedx.php?form=11732&id=6789234&min=info_custom'>AAAy</a></td>
<td>BBB</td>
<td>CCC</td>
</tr>
<tr>
<td><a href='href="/inedx.php?form=11732&id=3421&min=info_custom'>AAAy</a></td>
<td>BBB</td>
<td>CCC</td>
</tr>
</table>
</body> 

如何获得此唯一

id=1293399
id=609876
id=6789234
id=3421
var A = "...",
    link = A,
    num = link.match(/id=('d+)/);
num[0];  //"id="+number
num[1];  //only number
var B = num[0];
//Hey I just met you,
//and this is crazy,
//But here's your B,
//so use it maybe. :D

MDN:String.match

现场演示:http://jsfiddle.net/zBspF/

下面是另一个不依赖于位置id参数的答案:

$(function() {
    $("#ABC tr").each(function() {
        var url = $(this).find('td:nth-child(1)').find('a').attr("href");
        alert("id="+getURLParam("id", url));
    });
});
function getURLParam(name, url) {
    name = name.replace(/['[]/, "'''[").replace(/[']]/, "''']");
    var regexS = "[''?&]" + name + "=([^&#]*)";
    var regex = new RegExp(regexS);
    var results = regex.exec(url);
    if (results == null) return "";
    else return results[1];
}​

小提琴:http://jsfiddle.net/44rFm/1/

注意:从中给出的gup((函数的实现中借用的逻辑http://www.netlobo.com/url_query_string_javascript.html

这里有一个稍微有点技巧的方法

var B= "id="+A.split("&id=")[1].split("&")[0];

js小提琴:http://jsfiddle.net/uGrPT/

$(function() {
    $('a').each(function() {
    var href = $(this).attr('href');
  /*var id = href.substring(href.indexOf('&') + 1, href.lastIndexOf('&'));*/
    var id = href.match(/id='d+/g);
    $('body').append(id).append('<br>') //append to body
   //alert(id)
   })
});  

​jsfiddle

attr()返回属性值,因此A是href字符串。然后$(A)将使用href字符串作为jquery选择器来查找节点——这肯定不是您想要做的

我会将regexp匹配行更改为:

var B = A.match(/id='d+/);