Как добавить текст к URL-адресу в качестве параметра при нажатии на ссылку? - PullRequest
1 голос
/ 26 апреля 2020

Пожалуйста, помогите мне с моей ситуацией. У меня был веб-сайт с множеством веб-страниц с сотнями страниц и тысячами ссылок. Оставь это. Позвольте мне сказать о моей проблеме.

Давайте возьмем список

  1. Fruit - Click Here1
  2. Apple - Click Here2

, где Click Here содержит ссылку. Давайте возьмем пример Click Here1 содержит (www.example1.com). Click Here2 содержит (www.example2.com)

Что я пытаюсь сделать,

при нажатии на Click Here1, он должен открываться (www.example1.com#Fruit) при нажатии на Click Here2, он должен открываться (www.example2.com#Apple)

Так как это сделать? Я хочу, чтобы текст списка также добавить со ссылкой. Пожалуйста, помогите мне

Ответы [ 3 ]

0 голосов
/ 26 апреля 2020

Вы можете сделать что-то вроде следующего:

let list = document.querySelector("ul");
list.addEventListener("click", (e) => {
  if (e.target.nodeName !== "A") return;
  e.preventDefault();
  let hash = e.target.previousSibling.textContent.split(" ")[0];
  console.log(`${e.target.href.slice(0, -1)}#${hash}`);
  document.location.href = `${e.target.href.slice(0, -1)}#${hash}`;
});
<ul>
  <li>Fruit - <a href="http://www.example1.com">Click Here1</a></li>
  <li>Apple - <a href="http://www.example2.com">Click Here2</a></li>
</ul>

Вы прослушиваете клики в своем списке, затем, если щелчок происходит в элементе привязки, вы получаете текстовое содержимое предыдущего брата (фрукт / яблоко) и добавьте его к новому URL с префиксом хэштега.

0 голосов
/ 26 апреля 2020

Я работаю для сайтов с шаблонами Node.js Express и E JS. В моем app.js я использую этот код:

(страница называется post.ejs в URL ее "сообщения")

app.get("/posts/:postId", function(req, res) {
  const requestedPostId = req.params.postId;
  Post.findOne({
    _id: requestedPostId
  }, 

function(err, post) {
    res.render("post", {
    });
  });
});

Скажите мне, если это помогло.

0 голосов
/ 26 апреля 2020

if ('URLSearchParams' in window) {
    var searchParams = new URLSearchParams(window.location.search);
    searchParams.set("foo", "bar");
    window.location.search = searchParams.toString();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...