未捕获的TypeError:undefined不是使用jQuery时的函数
我编写这个脚本是为了向我的机器发出TCPIP请求,这很好 当我在开关(0=读卡器未就绪)中获得未捕获的TypeError:undefined不是使用jQuery时的函数,jquery,Jquery,我编写这个脚本是为了向我的机器发出TCPIP请求,这很好 当我在开关(0=读卡器未就绪)中获得status=0时,我写入代码,以便在10秒后间隔再次“按下”“#打印卡”按钮,以便再次尝试请求 一切正常,但当我用$('print#u card')再次按下按钮时,触发(“单击”)我得到了著名的错误: Uncaught TypeError:undefined在使用jQuery时不是一个函数,控制台将其提供给bootstrap.min.js:6文件(原始引导文件) 我尝试了$('print#u card
status=0
时,我写入代码,以便在10秒后间隔再次“按下”“#打印卡”按钮,以便再次尝试请求
一切正常,但当我用$('print#u card')再次按下按钮时,触发(“单击”)代码>我得到了著名的错误:
Uncaught TypeError:undefined在使用jQuery时不是一个函数,控制台将其提供给bootstrap.min.js:6
文件(原始引导文件)
我尝试了$('print#u card')。单击()代码>并且没有任何更改
这是我的密码。如果我删除行#439$(“#打印卡”)。触发(“单击”)代码>我没有得到错误…:
var interval;
var status_timer;
function attendi_e_riprova(txt){
var sec = 10;
var interval = setInterval(function(){
if(sec != 1){
sec--;
if(sec == 1){
sec_word = 'secondo';
}else{
sec_word = 'secondi';
}
$('#card-modal-body').html('<p>'+txt+'</p>');
}else{
clearInterval(interval);
//THIS IS THE TRIGGER <-----------------------------------
$('#print_card').trigger("click");
//THIS IS THE TRIGGER <-----------------------------------
return false;
}
}, 1000);
$('.close').click(function(){
clearInterval(interval);
clearInterval(status_timer);
});
}
var codemaster = '1';
var chain = 1;
var shop = 1;
function scriviCard(){
//Another function
}
$('#print_card').click(function(){
$('#card-modal-body').html('<p><i class="fa fa-spinner fa-spin"></i> Ricerca del lettore e card, attendere…</p>');
var req = '"CWD2";"';
$.post(base_url()+'config/RichiestaTCPIP', {array:req}, function(status){
if(status == 'err'){
console.error('Errore: controller file config.php funzione di linea #117');
}else{
console.log('Status: '+status)
switch(status){
case '0':
attendi_e_riprova('<i class="fa fa-ban text-danger"></i> Lettore NON disponibile. Assicurarsi che sia collegato.');
break;
case '1':
attendi_e_riprova('Lettore vuoto. Inserire una card vergine per poterla scrivere.');
break;
case '4':
attendi_e_riprova('<i class="fa fa-check text-success"></i> Card trovata. In attesa di riconoscimento...');
break;
case '5':
attendi_e_riprova('<i class="fa fa-ban text-danger"></i> Card in scrittura. Attendere completamento.');
break;
default:
//Nuova richiesta per la creazione card (per status 2 o 3)
scriviCard();
//console.log(status)
break;
}
}
})
})
var区间;
无功状态定时器;
函数attendi_e_riprova(txt){
var-sec=10;
var interval=setInterval(函数(){
如果(秒=1){
第二节;
如果(秒=1){
secu_单词=‘secondo’;
}否则{
secu_单词=‘secondi’;
}
$(“#卡片模态体”).html(“”+txt+””);
}否则{
间隔时间;
//这是触发器我认为您应该在使用触发器命令之前,尝试在变量中定义函数!类似这样:
window.clickFunction=function(
$('#card-modal-body').html('<p><i class="fa fa-spinner fa-spin"></i> Ricerca del lettore e card, attendere…</p>');
var req = '"CWD2";"';
$.post(base_url()+'config/RichiestaTCPIP', {array:req}, function(status){
if(status == 'err'){
console.error('Errore: controller file config.php funzione di linea #117');
}else{
console.log('Status: '+status)
switch(status){
case '0':
attendi_e_riprova('<i class="fa fa-ban text-danger"></i> Lettore NON disponibile. Assicurarsi che sia collegato.');
break;
case '1':
attendi_e_riprova('Lettore vuoto. Inserire una card vergine per poterla scrivere.');
break;
case '4':
attendi_e_riprova('<i class="fa fa-check text-success"></i> Card trovata. In attesa di riconoscimento...');
break;
case '5':
attendi_e_riprova('<i class="fa fa-ban text-danger"></i> Card in scrittura. Attendere completamento.');
break;
default:
//Nuova richiesta per la creazione card (per status 2 o 3)
scriviCard();
//console.log(status)
break;
}
}});
$('#print_card').click(window.clickFunction);
或
注意:必须将变量定义为全局变量,并且必须在触发器或单击行之前定义
让我知道它是如何运行的。您是在引导文件之前加载jQuery吗?您是在代码中使用jQuery之前等待DOM加载吗?“我编写此脚本是为了向我的机器发出TCPIP请求…”不是那么低级。:-)您正在请求浏览器为您发出HTTP请求。您在一些地方缺少了一些;
,例如在clearInterval(t);}
之后。请尝试使用$(“#打印卡”)。单击()
@MarcoCI jQuery首先加载引导程序,第二加载引导程序,第三加载此代码,此代码不在外部文件中,而是在页面本身中。好的,成功了!我这样做:window.clickFunction=function{…}
而不是window.clickFunction.trigger();
我只是放置了一个普通的javascriptclickFunction();
window.clickFunction.trigger();