簡體   English   中英

Ajax可自定義的錯誤回調函數

[英]Ajax Customizable Error Callback Function

因此,此功能非常有效,除了我還有六個按鈕並且不希望我的代碼有大量重復代碼。 對於自定義部分,我希望每個回調都不同,例如,如果用戶不是admin等,則文本追加“ Please Log In”要不同。如何使每個按鈕可自定義? 謝謝!

  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中

在CoffeeScript中,您可以在函數中定義函數。 不要讓任何人告訴你CoffeeScript或JavaScript是一種功能語言。 函數是一流的對象,對象可以封裝其他對象。

error: (xhr, ajaxOptions, thrownError) -> 
  console.dir(arguments)
  console.log("*| Status ", xhr.status)
  console.log("*| Error", thrownError)
  console.log("*| Ajax", ajaxOptions)
  needsAGoodName = (msg) ->
    $('#data-text').empty()   
    $('#data-text').append(msg)
    $('#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")
  if not username? or not password?
    needsAGoodName("""<h1>Please Log In</h1>""")
  else
    needsAGoodName("""<h1>Failed Log In</h1>""")

我刪除了if周圍的括號,並在樣式調用的函數周圍添加了括號。 無論哪種方式都可以。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM