提取 URL 的中间部分并将其附加到新的外部链接以在 IE8 中显示

Extracting the middle part of a URL and appending it to a new external link to display in IE8

本文关键字:链接 外部 IE8 显示 中间部 URL 提取      更新时间:2023-09-26

我在制作一个简单的函数来获取URL的一部分(可变数量的字符)并将其附加到另一个URL然后显示它时遇到了一些困难。

这是踢球者 - 它必须在IE8上运行。

我目前正在 HTML 中使用以下代码和 Javascript 将文本输入附加到 URL,但我想通过让用户输入成为整个 URL 并将其的一部分提取到基本 URL 的末尾来自动化该过程。我目前正在使用 HTML 和 Javascript 来接受有关如何在 IE8 上正常运行的方法干净地处理它的建议

原始网址示例 - http://www.website.com/search?type=165498746&otheroperator?type=168574981&search?type=165498746&display

我需要提取的部分示例 - 165498746(第一次出现,紧跟在搜索之后?type=)

要显示的完整 URL 的示例 - http://www.website.com/file?type=165498746

Javascript:

function ChangeLink() { var inputlink = document.getElementById("userinputtext"); var baselink = document.getElementById("baseurl"); baselink.href = ("http://www.website.com/search?type=" + inputlink.value); baselink.innerHTML = baselink.href; }

.HTML: <form> <a id="baseurl" href="http://www.website.com">www.website.com</a> <input type="text" id="userinputtext" size="20"> <input type="button" value="Generate Profile Link" name="generate" onClick="ChangeLink()"> </form>

值得注意的是,我需要附加到链接末尾的文本部分将源自原始链接的中间,并且原始 URL 的字符长度可能会发生变化,我希望附加到 URL 的实际部分也会发生变化。

唯一一致的部分是,我希望提取的部分是在初始"search?type="之后,紧随其后的是与号,但"search?type="和&符号可能在URL中出现不止一次。

我尝试切片()文本,但由于我希望切片的部分的长度不同,我无法做到。

  1. 获取 indexOf('?');
  2. 获取从 indexOf('?') 到字符串末尾的子字符串。
  3. String.split('&')
  4. 通过拆分进行迭代。
    • 对于每个拆分的项目,在"="上再次拆分
    • 拆分的第一项是参数的名称。
    • 拆分的第二项是值。
    • 检查它是否是您正在寻找的参数的名称或任何您想要的名称。