检查列表中的每个href是否包含问号(?)并添加&符号(&) - jquery

问题描述 投票:-2回答:1

我有一个hrefs列表。我想检查这个?中是否包含问号href。 如果没有,请在此?末尾添加一个带有问号href的变量。 如果它包含一个问号,则在此&末尾添加一个带有&符号href的变量。

<ul>
  <li><a href="https://www.testone.com/">link 1</a></li>
  <li><a href="https://www.testtwo.com/?variable1=ok1">link 2</a></li>
  <li><a href="https://www.testthree.com/?variable2=ok2&variable3=ok3">link 3</a></li>
  <li><a href="https://www.testfour.com/">link 4</a></li>
</ul>

在上面的链接中,我想在每个href的末尾添加一个变量,这样它们就会变成这样:

https://www.testone.com/?addedVariable=add 
https://www.testtwo.com/?variable1=ok1&addedVariable=add 
https://www.testthree.com/?variable2=ok2&variable3=ok3&addedVariable=add 
https://www.testfour.com/?addedVariable=add
jquery variables html-lists href
1个回答
1
投票

首先找到所有链接的“href”,然后找到它包含“?”或不。

  • 如果有 ”?”在链接中而不是追加“&addedVariable = add”。
  • 否则,追加“?addedVariable = add”

$("ul li").find("a").each(function(){
	var link = $(this).attr("href");
  if (link.indexOf("?") !=-1) {
  	link += "&addedVariable=add ";
	} else {
  	link += "?addedVariable=add ";
  }
  $("#newLinks").append(link + "<br/>");
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul>
  <li><a href="https://www.testone.com/">link 1</a></li>
  <li><a href="https://www.testtwo.com/?variable1=ok1">link 2</a></li>
  <li><a href="https://www.testthree.com/?variable2=ok2&variable3=ok3">link 3</a></li>
  <li><a href="https://www.testfour.com/">link 4</a></li>
</ul>

<div id="newLinks"></div>
© www.soinside.com 2019 - 2024. All rights reserved.