Изменить входное значение при загрузке страницы, если URL содержит строку - PullRequest
0 голосов
/ 11 октября 2019

Я пытаюсь изменить значение поля ввода на основе URL в адресной строке. Если URL содержит «sometext», тогда значение поля ввода должно быть «Поиск по ключевому слову или номеру каталога», а если нет, то значение должно быть «Поиск по ключевому слову». При щелчке по полю ввода текст заполнителя должен исчезнуть.

Нет ошибок консоли, но текст поля ввода не изменяется.

window.onload = onPageLoad();
function onPageLoad() {
var url = parent.document.URL; //Using parent.document.URL as this in within an iFrame.
    if (url.indexOf("sometext") > -1) {
        $("#SearchValue").val("Search by keyword or catalogue number")
    }
    else {
        $("#SearchValue").val("Search by keyword")
    }
}

<input onfocus="if(this.value.indexOf('Search by keyword') > -1){this.value = '';}" size="50" value="Search by keyword" name="SearchValue">

1 Ответ

0 голосов
/ 11 октября 2019

Во-первых, вам не нужно связываться со значением элемента управления вводом, для этого можно использовать атрибут placeholder:

HTML

<input size="50" placeholder="" name="SearchValue" id="SearchValue">

Javascript

window.onload = onPageLoad();

function onPageLoad() {
  var url = document.location.href;

  if (url.indexOf("sometext") > -1) {
    $("#SearchValue").attr("placeholder", "Search by keyword or catalogue number");
  }
  else {
    $("#SearchValue").attr("placeholder", "Search by keyword");
  }
}

Вы можете попробовать это здесь: https://zikro.gr/dbg/html/test.html?sometext

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...