xxx 함수 is not a function에 대한 문제
자바스크립트 함수 not a function 문제
핵심지식:this지향문제
상술한 화제의 기초는 스스로 머리를 고쳐 주십시오
document.getElementById('timeTips').addEventListener('click',function (){
var mobileCodeBtn= document.getElementById('timeTips');
var mobile = $("#mobile").val();
if(mobile == ''){
return WST.msg(' ');
}
var phon = /^1[3|4|5|7|8]\d{9}$/;
$.post(WST.U('home/users/check'),{mobile:mobile},function(data,textStatus){
if (data.status == -1) {
return WST.msg(' ');
}else if(data.status == 1){
// alert(data.status);exit();
if ( mobile && mobile != null && phon.test(mobile)){
ruleCode(this,mobile,mobile+"-"+num);
remoeDis(this);
}
}
});
});
editPass.html:690 Uncaught TypeError: btn.setAttribute is not a function
at removeDis (editPass.html:690)
at Object.success (editPass.html:744)
at j (jquery.min.js?v=1.4.1_170330_:2)
at Object.fireWith [as resolveWith] (jquery.min.js?v=1.4.1_170330_:2)
at x (jquery.min.js?v=1.4.1_170330_:5)
at XMLHttpRequest.b (jquery.min.js?v=1.4.1_170330_:5)
btn.setAttribute is not a function at removeDis(editPass.html:690)는 주로 이 줄의 오류를 보며, xxx is not a function가 바로 주인입니다.
오류 원인:
$.post(WST.U('home/users/check'),{mobile:mobile},function(data,textStatus)
다음은 jQuery의 $를 찾습니다.post () 이벤트 소스:
Query.each( [ "get", "post" ], function( i, method ) {
jQuery[ method ] = function( url, data, callback, type ) {
// Shift arguments if data argument was omitted
if ( jQuery.isFunction( data ) ) {
type = type || callback;
callback = data;
data = undefined;
}
// The url can be an options object (which then must have .url)
return jQuery.ajax( jQuery.extend( {
url: url,
type: method,
dataType: type,
data: data,
success: callback
}, jQuery.isPlainObject( url ) && url ) );
};
} );
이것은 aax 대상을 되돌려주는 것을 발견할 수 있습니다. 이로 인해this 지향 오류가 발생했습니다. 해결 방법은 $입니다.post () 이벤트 전에this 바늘을 변수로 저장합니다.변경된 코드는 다음과 같습니다.
document.getElementById('timeTips').addEventListener('click',function (){
var mobileCodeBtn= document.getElementById('timeTips');
var mobile = $("#mobile").val();
var that = this;
if(mobile == ''){
return WST.msg(' ');
}
var phon = /^1[3|4|5|7|8]\d{9}$/;
$.post(WST.U('home/users/check'),{mobile:mobile},function(data,textStatus){
if (data.status == -1) {
return WST.msg(' ');
}else if(data.status == 1){
// alert(data.status);exit();
if ( mobile && mobile != null && phon.test(mobile)){
ruleCode(that,mobile,mobile+"-"+num);
remoeDis(that);
}
}
});
});
보충점:this는 상하문에 따라 현재 대상을 찾습니다 (개인 프로그래밍 이해)
이상 공유에 오류가 있으면, 여러분은 바로잡고, 바로잡고, 도끼하여 주십시오
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.