Sha256: a17f4c47b97d9e8df7e596f16448761ef25f131c2df4c9352fc972ef608b2cc6

Contents?: true

Size: 1.03 KB

Versions: 1

Compression:

Stored size: 1.03 KB

Contents

# Redefines submit behaviour for forms specified by +el+ selector.
#
# On submit handler composes and sends AJAX request, renders result
# in an element specified by form's +target+ attribute.
#
( exports ? this ).form_data_async_enable = (el, target) ->
    $(el).on 'submit', (event)->
        form = $(this)
        $.ajax
            type: form.attr 'method'
            url: form.attr 'action'
            data: form.serialize()
            error: (x, e, status ) ->
                console?.log "form-data-async submit error: #{e}, status: #{status}"
            success: (data, status, xhr) ->
                content_type = xhr.getResponseHeader 'content-type'
                if /^text\/html/.test content_type
                    $(target).empty()
                    $(target).html data
                else
                    console?.log "form-data-async ignoring content: #{content_type}"

        event.preventDefault()
    console?.log "form-data-async enabled for #{el}, target:#{target}"

$ ->
    console?.log "form-data-async loaded"

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
aerogel-admin-1.4.4 assets/javascripts/utils/form-data-async.js.coffee