Я пытаюсь написать код для автоматического выбора переключателя:
<input type="radio" class="pricezone-radio-input"
name="abcdef" value="123" checked="" title="A">
Поскольку имя переключателя меняется каждый раз при обновлении веб-сайта, поэтому вместо него я использовал название
var $ = window.jQuery;
(function() {
'use strict';
// Your code here...
$("[A']").click();
})();
Когда я смотрю на консоль в Chrome, после запуска кода возникает ошибка:
common.js?version=1552060637712:1175 Uncaught TypeError: Cannot read
property 'replace' of undefined
at handleAjaxError (common.js?version=1552060637712:1175)
at Object.success (performanceDetail.js?version=1552060637712:345)
at u (userscript.html?id=8cad0fd6-8836-407e-b409-3f083400471d:5)
at Object.fireWith [as resolveWith] (userscript.html?id=8cad0fd6-8836-407e-
b409-3f083400471d:5)
at k (userscript.html?id=8cad0fd6-8836-407e-b409-3f083400471d:5)
at XMLHttpRequest.eval (userscript.html?id=8cad0fd6-8836-407e-b409-
3f083400471d:5)
Кто-нибудь может подсказать, как это исправить?
Просто найдите, что это скрипт самого сайта, вызывающий проблему
handleAjaxError = function(ajaxData){
var metaTag = $(ajaxData).filter("meta[http-equiv=refresh]");
if (typeof(metaTag) !== undefined) {
var content = metaTag.attr("content");
var url = content.replace("0; url=", "");
window.location.href = url;
} else {
$('#loading-blk').hide('hidden');
$('.ajax-call-error').removeClass('hidden');
}
};
Есть ли способ, которым я могу решить это?
Chrome: версия 72.0.3626.121; Tampermonkey: v4.8
Точный скрипт, который я использую:
// ==UserScript==
// @name New test
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @author You
// @match https://ticket.urbtix.hk/internet/zh_TW/secure/event/37954/performanceDetail/367999
// @require http://code.jquery.com/jquery-3.3.1.min.js
// @grant none
// ==/UserScript==
var $ = window.jQuery;
(function() {
'use strict';
// Your code here...
$("[title='Price Zone B']").click();
})();