Я использую jquery url shortener (https://github.com/hayageek/jQuery-URL-shortener), и я пытаюсь это сделать, когда jquery возвращает сокращенный url, он заменит исходный url в текстовое поле. Моя проблема в том, что.replace(), похоже, не работает здесь:
$("#button").click(function () {
regex = /(https?:\/\/(?:www\.|(?!www))[^\s\.]+\.[^\s]{2,}|www\.[^\s]+\.[^\s]{2,})/g ;
var longUrlLink = $("#textarea").val().match(regex);
jQuery.urlShortener({
longUrl: longUrlLink,
success: function (shortUrl) {
$("#textarea").val().replace(longUrlLink, shortUrl);
}
});
});
Регулярное выражение отлично работает, и shortUrl возвращается точно, поэтому проблема должна заключаться в том, как я написал последнюю строку, но я не могу заставить ее работать.
Любая помощь приветствуется.
Вы также должны установить новое значение:
$("#textarea").val($("#textarea").val().replace(longUrlLink, shortUrl));
shortUrl
в ваш$('#textarea').val()
он должен автоматически перезаписать его -$("#textarea").val(shortUrl);
$('#textarea').val(shortUrl);
...