이 함수는 완벽하게 작동합니다. 여섯 개의 버튼이 더 있고 코드에 반복 코드가 필요하지 않기 때문에 beforeSend 호출을 꺼내 외부 콜백으로 만들 수있는 방법이 있습니다. 기능? 미리 감사드립니다.Jquery Ajax 콜백 외부 함수
$('#button_status').on 'click', ->
username = $('#login_username').val()
password = $('#login_password').val()
mac_id = $('#login_mac').val()
$.ajax
type: "GET"
url: start_url + mac_id + "/status"
dataType: "json"
crossDomain: true
cache: false
beforeSend: (xhr) ->
xhr.setRequestHeader('Authorization', 'Basic ' + btoa(username + ":" + password));
!
나는이 또한 내 아약스의 일부가 있지만 모든 단추에 동일한 콜백이 있으면 오류 메시지가 같고 무의미합니다. 이 버튼을 각 버튼에 맞게 사용자 정의 할 수 있습니까? 고맙습니다!
error: (xhr, ajaxOptions, thrownError) ->
console.dir arguments
console.log("*| Status ", xhr.status)
console.log("*| Error", thrownError)
console.log("*| Ajax", ajaxOptions)
if (not username? or not password?)
$('#data-text').empty()
$('#data-text').append ("""<h1>Please Log In</h1>""")
$('#input_username').fadeTo(100, 0.1).fadeTo(200, 1.0);
$('#input_password').fadeTo(100, 0.1).fadeTo(200, 1.0);
$('#header_user').css "background-color": "#d34242"
$('#header_password').css "background-color": "#d34242"
$('#data-text').css "background-color": "#d38642"
else
$('#data-text').empty()
$('#data-text').append ("""<h1>Failed Log In</h1>""")
$('#input_username').fadeTo(100, 0.1).fadeTo(200, 1.0);
$('#input_password').fadeTo(100, 0.1).fadeTo(200, 1.0);
$('#header_user').css "background-color": "#d34242"
$('#header_password').css "background-color": "#d34242"
$('#data-text').css "background-color": "#d38642"
또한이 코드는 CoffeeScript로 작성되었습니다. – TheAce