Мои поля ввода не фиксируются при размещении на панели инструментов - PullRequest
0 голосов
/ 10 апреля 2019

Я создаю букмарклет поиска работы. Это займет ваше ключевое слово и местоположение и откроет несколько вкладок поиска.

По какой-то причине первая ссылка для поиска через Dice.com не захватывает поля ввода и не работает, когда все помещено в панель инструментов.

Окончательная версия откроет каждую последующую вкладку с задержкой 1010 мс для каждого выбранного сайта.

У меня большая часть кода закончена, и он выглядит нормально, но когда я нажимаю на гиперссылку для Dice, ничего не происходит.

Букмарклет Drag & Drop:

https://codepen.io/bookmarklets/pen/xeqJZb#

Вышеуказанный Codepen открывает кнопку, которая представляет собой букмарклет, который вы перетаскиваете на панель закладок. Код букмарклета отображается в окне Codepen HTML. CSS-код Codepen можно игнорировать, поскольку он относится только к этой удобной кнопке, а не к фактической закладке.

<div style="float:left"><table><tr><td style="border-right-style:solid;text-align:right"><b>Job Searcher</b> &nbsp;<br><input type="checkbox" onClick="toggle(this)"; checked><label for="all" id="all" name="all"> All </label><input type="submit"> &nbsp;</td><td style="border-right-style:solid;border-right-color:#555;border-right-width:1px"><form><input type="text" placeholder="Enter&nbsp;Job&nbsp;Title" name="jobTitle" id="jobTitle" /> &nbsp;&nbsp;<br><input type="text" placeholder="Enter&nbsp;Location" name="jobLocation" id="jobLocation" /> &nbsp;&nbsp;</td><td>  &nbsp; <img src="https://assets.dice.com/techpro/img/favicons/favicon-32x32.png" height="16" /> &nbsp;<input type="checkbox" checked name="dice" id="dice"> <a onClick="goDice()"; href="#"> Dice</a></td></tr></table>
function goDice(){
    var role = document.getElementById('jobTitle').value;
    var b = document.getElementById('site').value;
    var goToDice='https://www.dice.com/jobs?q='+ role +'&l=' + b;
    goToDice = goToDice.replace(/[ ]/g,'+');
    goToDice = goToDice.replace(/,/g,'%2C');
    window.open(goToDice);
}

1 Ответ

0 голосов
/ 10 апреля 2019

Ваши идентификаторы не совпадают между HTML и JS.

В JS у вас есть:

var role = document.getElementById('jobTitle').value;
var b = document.getElementById('site').value;

Между тем, в HTML у вас есть:

id="jobTitle/"
id="jobLocation"

Исправляя это, ссылка Dice открывается, и в новом окне.

На заметке, лучше никогда не использовать / в имени.

...