使用jQuery更改字符串的一部分

Change part of a string with jQuery

本文关键字:一部分 字符串 jQuery 使用      更新时间:2023-09-26

我相信这很简单,但我想不通。

我有这个HTML:

<img src="/7290/9200572193_f95fb66c50_m.jpg" />

我需要将其更改为

<img src="/7290/9200572193_f95fb66c50_b.jpg" />

这并不总是相同的图像,但_m.jpg_b.jpg是相同的。如何使用jQuery完成此操作?

你可以做:

var imgSrc = "/7290/9200572193_f95fb66c50_m.jpg";
imgSrc = imgSrc.replace("_m.jpg", "_b.jpg");

这样的东西可能会对您有所帮助:

$( "img" ).each(function() {
  var src = $( this ).attr( "src" );
  $( this ).attr( "src", src.replace( /_m'.(.*)$/, "_b.$1" ) );
});

这将不取决于src属性的扩展。

循环使用$("img").each(function(){ doStuff(); });的"img"标记。用attr("attribute","new_value")更改属性,用attr("attribute")获取属性。更换为replace("from","to")

$("img").each(function(){
  $(this).attr("src",$(this).attr("src").replace("_m","_b"));
});

简而言之,使用.replace。例如:

"/7290/9200572193_f95fb66c50_m.jpg".replace('_m.jpg', '_b.jpg');
/*  OR  */
var url = "/7290/9200572193_f95fb66c50_m.jpg";
url.replace('_m.jpg', '_b.jpg');

在jQuery中使用.each()循环遍历一组元素。因此,您可以使用像$('img')这样的简单选择器来选择视图上的所有图像,然后更改callback方法。然后,您可以使用.prop来设置和获取当前的src,并使用老式的.replace 进行更改

$("img").each(function(i) {
    $(this).prop("src", $(this).prop("src").replace('_m.jpg', '_b.jpg'));
});

示例