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

时间:2019-03-07 14:41:37

标签: jquery variables html-lists href

我有一个href个列表。我想检查一下此?中是否包含问号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

1 个答案:

答案 0 :(得分: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>