这个用jquery应该怎么写呢?

我想把下面代码中的data-city=""填上,填写后像这样:

data-city="beijing"
data-city="tianjin"

也就是把.card-body第一个子元素的href里面的地点填入到data-city,用jquery应该怎么写呢?

<div class="card" data-city="">
    <div class="card-body">
        <a href="https://beijing.example.com" class="card-link">北京</a>
        <a href="https://bjdongcheng.example.com" class="card-link">东城</a>
        <a href="https://bjxicheng.example.com" class="card-link">西城</a>
    </div>
</div>

<div class="card" data-city="">
    <div class="card-body">
        <a href="https://tianjin.example.com" class="card-link">天津</a>
        <a href="https://tjhedong.example.com" class="card-link">河东</a>
        <a href="https://tjhexi.example.com" class="card-link">河西</a>
    </div>
</div>
阅读 2.8k
3 个回答
    $('.card').attr('data-city', function() {
        return $(this).find('.card-body a').eq(0).html();
    })
$('.card').each(function(){
    var reg=/\/\w*\./;
    var city = $(this).find('a').attr('href').match(reg)[0]
    city=city.substring(city.indexOf('/')+1,city.indexOf('.'))
    $(this).attr('data-city',city);
})

`

$('.card).each(function(){
    var reg  = /https:\/\/(\w+).*\.com$/;
    var city = $(this).find('.card-body > a').eq(0).attr('href').match(reg)[1];
    $(this).attr('data-city', city);
});

`

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进