gpt4 book ai didi

javascript - JQuery:如何替换两个特定部分之间的属性部分?

转载 作者:行者123 更新时间:2023-12-02 16:03:47 24 4
gpt4 key购买 nike

我想更改 src 属性内网址的部分。这将通过点击函数来调用。这可以在不刷新页面以及之前选择另一种语言的情况下更改点赞按钮的语言。

这个效果很好,但是由于有多种语言,所以它只能工作一次;当基础“状态”为 hu_HU(匈牙利语)时:

$('.fb-like').attr('src', function(i, src) {
return src.replace("hu_HU","ro_RO");
});

我根据这个问题的解决方案更改了代码来完成目标:JQuery: how to replace all between certain characters?但没有任何成功:

$('.fb-like').attr('src', function(i, src) {
return src.replace(/locale\=.+?\&amp/g,"locale="+ro_RO+"&amp");
});

我错过了什么?任何帮助,将不胜感激!先感谢您!

这是 fiddle :http://jsfiddle.net/iorgu/a0aptp3g/2/

最佳答案

这与 one of my earlier answers 相关.

现在,您打算更改 iframe 的源,因此我们不能再假设它是 window.location.href。因此,我相信该函数的修改版本应该可以解决您的问题:

function setGetParameter(paramName, paramValue, url)
{
var url = !!url ? url : window.location.href;
if (url.indexOf(paramName + "=") >= 0)
{
var prefix = url.substring(0, url.indexOf(paramName));
var suffix = url.substring(url.indexOf(paramName));
suffix = suffix.substring(suffix.indexOf("=") + 1);
suffix = (suffix.indexOf("&") >= 0) ? suffix.substring(suffix.indexOf("&")) : "";
url = prefix + paramName + "=" + paramValue + suffix;
}
else
{
if (url.indexOf("?") < 0)
url += "?" + paramName + "=" + paramValue;
else
url += "&" + paramName + "=" + paramValue;
}
return url;
}

你这样调用它:

$('.fb-like').attr('src', setGetParameter("locale", "ro_RO", $('.fb-like').attr('src')));

结果是爱情大师已成功更改区域设置

Fiddle .

关于javascript - JQuery:如何替换两个特定部分之间的属性部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30964905/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com