---
title: "Saincheaptha JavaScript sa riarachán"
version: 6.0
locale: ga
source: https://docs.djangoproject.com/ga/6.0/ref/contrib/admin/javascript/
canonical: https://djangodocs.dev/ga/6.0/ref/contrib/admin/javascript/
---
# Saincheaptha JavaScript sa riarachán

## Imeachtaí foirm inlíne

B'fhéidir gur mhaith leat roinnt JavaScript a fhorghníomhú nuair a chuirtear foirm inlíne leis nó baintear san fhoirm athraithe riaracháin. Ceadaíonn na himeachtaí `formset:added` agus `formset:removed` seo. Is é `Event.detail.FormSetName` an tacar foirme leis an tsraith a bhaineann leis. Maidir leis an imeacht `formset:added`, is é `event.target` an tsraith nua-bhreise.

I do theimpléad saincheaptha `change_form.html`, leathnaigh an bloc `admin_change_form_document_ready` agus cuir an cód éisteora imeachta leis:

```html+django
{% extends 'admin/change_form.html' %}
{% load static %}

{% block admin_change_form_document_ready %}
{{ block.super }}
<script src="{% static 'app/formset_handlers.js' %}"></script>
{% endblock %}
```

*app/statach/app/formset\_handlers.js \`\`*

```javascript
document.addEventListener('formset:added', (event) => {
    if (event.detail.formsetName == 'author_set') {
        // Do something
    }
});
document.addEventListener('formset:removed', (event) => {
    // Row removed
});
```

Dhá phointe le coinneáil i gcuimhne:

- Caithfidh an cód JavaScript dul i mbloc teimpléad má tá tú ag oidhreacht `admin/change_form.html` nó ní dhéanfar é a léiriú sa HTML deiridh.
- Cuirtear ```{{block.super}} `leis toisc go bhfuil cód JavaScript i mbloc ``admin_change_form_document_ready``` Django chun oibríochtaí éagsúla a láimhseáil sa fhoirm athraithe agus ní mór dúinn é sin a léiriú freisin.

### Leaganacha tacaíochta de Django níos sine ná 4.1

Má chaithfidh d'éisteoir imeachta tacú le leaganacha níos sine de Django fós caithfidh tú jQuery a úsáid chun d'éisteoir imeachta a chlárú. Láimhseálann jQuery imeachtaí JavaScript ach níl an cúil fíor.

D'fhéadfá seiceáil go bhfuil Event.detail.FormSetName\` ann agus titim ar ais chuig an sean-shíniú éisteora mar seo a leanas:

```javascript
function handleFormsetAdded(row, formsetName) {
    // Do something
}

$(document).on('formset:added', (event, $row, formsetName) => {
    if (event.detail && event.detail.formsetName) {
        // Django >= 4.1
        handleFormsetAdded(event.target, event.detail.formsetName)
    } else {
        // Django < 4.1, use $row and formsetName
        handleFormsetAdded($row.get(0), formsetName)
    }
})
```
