放置在工具栏中时,无法捕获我的输入字段

时间:2019-04-10 17:11:20

标签: javascript forms input toolbar

我正在构建求职书签。它将带有您的关键字和位置,并打开多个搜索选项卡。

由于某些原因,通过Dice.com进行搜索的第一个链接未捕获输入字段,并且在所有内容都放入工具栏后无法正常工作。

最终版本将打开每个后续选项卡,每个所选站点的延迟为1010ms。

我已经完成了大部分代码,看起来还不错,但是当我单击Dice的超链接时,什么也没发生。

拖放书签:

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

上面的Codepen打开一个按钮,这是一个书签小工具,您可以将其拖动到书签栏中。小书签代码在Codepen HTML窗口中可见。可以忽略Codepen CSS,因为它仅与此便捷按钮有关,而与实际书本无关。

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

您的ID在HTML和JS之间不匹配。

在JS中,您具有:

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

同时,在HTML中,您可以:

id="jobTitle/"
id="jobLocation"

修复这些问题后,“骰子”链接确实会打开,并在新窗口中显示。

从侧面讲,最好不要在名称中使用/