jQuery .click(处理程序)在Greasemonkey脚本中查找输入元素空白(然而addEventListen
jQuery .click(handler) finds input element blank in Greasemonkey script (addEventListener works, however)
我有一个Greasemonkey脚本,它在JIRA和票证应用程序之间做一些关联。当你将一个项目关联到JIRA票证时,它使一些API帖子到JIRA添加另一个票证到JIRA,所以它是双向的。相关的HTML(我无法控制更改)是:
<div id="related_inputs" class="related-items-actions-inner">
<label class="align" style="width: 104px;">full_jira_url: </label>
<input type="text" style="margin-left: 109px;">
<br>
</div>
和按钮:
<a id="relate-button" class="tt_button">
<span id="relate-button-text">Relate</span>
</a>
所以基本上当用户点击按钮/链接时,我想从上面的输入中提取输入值(在"相关输入"中)Div),然后做一些其他的事情。它曾经工作,不再是,所以我不确定这是由于浏览器的回归,一个JIRA的变化或一个变化的网站代码,我正在写的脚本。
Greasemonkey脚本的要点是:(function () {
console.log("Started script!");
$('#relate-button').click( function(event) {
var related_ticket_type = $('#related_inputs label').text().trim();
console.log("ticket type is " + related_ticket_type);
if (related_ticket_type != JIRA_LABEL_TEXT) {
return;
}
var jira_url = $('#related_inputs input').val();
console.log(jira_url); // <<== this is "" all the time now even when the input has data in it when pressed
var match = jira_url.match(JIRA_REGEX);
if (match.length != 2) {
console.log("We didn't match the URL to a valid RDS Jira url.")
return;
}
...
问题是我从输入元素得到的值每次都是空的。我已经在控制台中确认它是正确的输入元素。label元素是正确的,因为它到达了输入代码。
有什么想法或建议吗?
在我发现了以下内容之后,问题归结为:jQuery的.click(handler)
和element.addEventListener( 'click', function(event) {...}, true)
有什么区别?
因此,我没有使用jquery的。click(处理程序),而是做了以下操作:
var button_el = document.getElementById('relate-button');
button_el.addEventListener( 'click', function(event) {....}, true);
这样做修复了这个问题(即url的值是而不是空白)。然而,我真的很想知道为什么这解决了我的问题。
我使用的是Greasemonkey 1.15
相关文章:
- 需要URL模板占位符查找和替换功能的输入
- Javascript文本框-查找最低的输入和填充
- 在 jquery 中的 TR 中查找 td 的所有输入
- jQuery选择器,用于查找包含具有特定值的TD输入的TR
- 查找表单输入的第一个单词
- 在指定的td中查找输入字段的特定值
- 使用最接近查找文本输入的JQuery问题
- Regex以查找除输入的最后n个字符之外的匹配项
- 如何在另一个页面中查找元素,并从当前页面上的元素中输入值
- Mongoose:查找与输入类似的名称
- 使用jQuery查找输入字段
- 查找表单的哪些特定部分在输入时发生了更改
- 在javascript中的page ready中查找输入值修改的来源
- 如何从许多其他输入中查找触发键关闭事件的特定输入框
- 如何使用Javascript查找一系列隐藏输入字段的索引
- eBay 查找 API findItemsByKeywords 返回“输入 URL 为标头 X-EBAY-SOA-OPE
- 在集合中查找空的输入元素 - jQuery
- 如何查找输入标签中的字符数
- 如何将我的 Google 地图功能从自动查找我的位置更改为让我输入一个位置
- 通过在文本框中输入查找属性值并获得父属性值