{"title":"Saincheaptha JavaScript sa riarachán","version":"6.0","locale":"ga","docname":"ref/contrib/admin/javascript","url":"/ga/6.0/ref/contrib/admin/javascript/","canonical":"https://djangodocs.dev/ga/6.0/ref/contrib/admin/javascript/","summary":"Imeachtaí foirm inlíne Link to this heading # B'fhéidir gur mhaith leat roinnt JavaScript a fhorghníomhú nuair a chuirtear foirm inlíne leis nó baintear san fhoirm…","html":"<h1>Saincheaptha JavaScript sa riarachán<a class=\"heading-anchor\" href=\"#javascript-customizations-in-the-admin\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<section id=\"inline-form-events\">\n<span id=\"admin-javascript-inline-form-events\"></span><h2>Imeachtaí foirm inlíne<a class=\"heading-anchor\" href=\"#inline-form-events\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>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í <code class=\"docutils literal notranslate\"><span class=\"pre\">formset:added</span></code> agus <code class=\"docutils literal notranslate\"><span class=\"pre\">formset:removed</span></code> seo. Is é <code class=\"docutils literal notranslate\"><span class=\"pre\">Event.detail.FormSetName</span></code> an tacar foirme leis an tsraith a bhaineann leis. Maidir leis an imeacht <code class=\"docutils literal notranslate\"><span class=\"pre\">formset:added</span></code>, is é <code class=\"docutils literal notranslate\"><span class=\"pre\">event.target</span></code> an tsraith nua-bhreise.</p>\n<p>I do theimpléad saincheaptha <code class=\"docutils literal notranslate\"><span class=\"pre\">change_form.html</span></code>, leathnaigh an bloc <code class=\"docutils literal notranslate\"><span class=\"pre\">admin_change_form_document_ready</span></code> agus cuir an cód éisteora imeachta leis:</p>\n<div class=\"code-block\" data-language=\"html+django\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Django template</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Django template code\"><code><span class=\"cp\">{%</span> <span class=\"k\">extends</span> <span class=\"s1\">&#39;admin/change_form.html&#39;</span> <span class=\"cp\">%}</span>\n<span class=\"cp\">{%</span> <span class=\"k\">load</span> <span class=\"nv\">static</span> <span class=\"cp\">%}</span>\n\n<span class=\"cp\">{%</span> <span class=\"k\">block</span> <span class=\"nv\">admin_change_form_document_ready</span> <span class=\"cp\">%}</span>\n<span class=\"cp\">{{</span> <span class=\"nb\">block</span><span class=\"nv\">.super</span> <span class=\"cp\">}}</span>\n<span class=\"p\">&lt;</span><span class=\"nt\">script</span> <span class=\"na\">src</span><span class=\"o\">=</span><span class=\"s\">&quot;</span><span class=\"cp\">{%</span> <span class=\"k\">static</span> <span class=\"s1\">&#39;app/formset_handlers.js&#39;</span> <span class=\"cp\">%}</span><span class=\"s\">&quot;</span><span class=\"p\">&gt;&lt;/</span><span class=\"nt\">script</span><span class=\"p\">&gt;</span>\n<span class=\"cp\">{%</span> <span class=\"k\">endblock</span> <span class=\"cp\">%}</span>\n</code></pre></div>\n<figure class=\"code-block code-block-captioned\" data-language=\"javascript\"><figcaption class=\"code-block-caption\"><a href=\"#id1\"><span class=\"problematic\" id=\"id2\">``</span></a>app/statach/app/formset_handlers.js ``</figcaption>\n<div class=\"code-block-toolbar\"><span class=\"code-block-language\">JavaScript</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"JavaScript code\"><code><span class=\"nb\">document</span><span class=\"p\">.</span><span class=\"nx\">addEventListener</span><span class=\"p\">(</span><span class=\"s1\">&#39;formset:added&#39;</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"nx\">event</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"p\">=&gt;</span><span class=\"w\"> </span><span class=\"p\">{</span>\n<span class=\"w\">    </span><span class=\"k\">if</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"nx\">event</span><span class=\"p\">.</span><span class=\"nx\">detail</span><span class=\"p\">.</span><span class=\"nx\">formsetName</span><span class=\"w\"> </span><span class=\"o\">==</span><span class=\"w\"> </span><span class=\"s1\">&#39;author_set&#39;</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"p\">{</span>\n<span class=\"w\">        </span><span class=\"c1\">// Do something</span>\n<span class=\"w\">    </span><span class=\"p\">}</span>\n<span class=\"p\">});</span>\n<span class=\"nb\">document</span><span class=\"p\">.</span><span class=\"nx\">addEventListener</span><span class=\"p\">(</span><span class=\"s1\">&#39;formset:removed&#39;</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"nx\">event</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"p\">=&gt;</span><span class=\"w\"> </span><span class=\"p\">{</span>\n<span class=\"w\">    </span><span class=\"c1\">// Row removed</span>\n<span class=\"p\">});</span>\n</code></pre></figure>\n<p>Dhá phointe le coinneáil i gcuimhne:</p>\n<ul class=\"simple\">\n<li><p>Caithfidh an cód JavaScript dul i mbloc teimpléad má tá tú ag oidhreacht <code class=\"docutils literal notranslate\"><span class=\"pre\">admin/change_form.html</span></code> nó ní dhéanfar é a léiriú sa HTML deiridh.</p></li>\n<li><p>Cuirtear <code class=\"docutils literal notranslate\"><span class=\"pre\">{{block.super}}</span> <span class=\"pre\">`leis</span> <span class=\"pre\">toisc</span> <span class=\"pre\">go</span> <span class=\"pre\">bhfuil</span> <span class=\"pre\">cód</span> <span class=\"pre\">JavaScript</span> <span class=\"pre\">i</span> <span class=\"pre\">mbloc</span> <span class=\"pre\">``admin_change_form_document_ready</span></code> Django chun oibríochtaí éagsúla a láimhseáil sa fhoirm athraithe agus ní mór dúinn é sin a léiriú freisin.</p></li>\n</ul>\n<section id=\"supporting-versions-of-django-older-than-4-1\">\n<h3>Leaganacha tacaíochta de Django níos sine ná 4.1<a class=\"heading-anchor\" href=\"#supporting-versions-of-django-older-than-4-1\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>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.</p>\n<p>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:</p>\n<div class=\"code-block\" data-language=\"javascript\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">JavaScript</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"JavaScript code\"><code><span class=\"kd\">function</span><span class=\"w\"> </span><span class=\"nx\">handleFormsetAdded</span><span class=\"p\">(</span><span class=\"nx\">row</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"nx\">formsetName</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"p\">{</span>\n<span class=\"w\">    </span><span class=\"c1\">// Do something</span>\n<span class=\"p\">}</span>\n\n<span class=\"nx\">$</span><span class=\"p\">(</span><span class=\"nb\">document</span><span class=\"p\">).</span><span class=\"nx\">on</span><span class=\"p\">(</span><span class=\"s1\">&#39;formset:added&#39;</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"nx\">event</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"nx\">$row</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"nx\">formsetName</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"p\">=&gt;</span><span class=\"w\"> </span><span class=\"p\">{</span>\n<span class=\"w\">    </span><span class=\"k\">if</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"nx\">event</span><span class=\"p\">.</span><span class=\"nx\">detail</span><span class=\"w\"> </span><span class=\"o\">&amp;&amp;</span><span class=\"w\"> </span><span class=\"nx\">event</span><span class=\"p\">.</span><span class=\"nx\">detail</span><span class=\"p\">.</span><span class=\"nx\">formsetName</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"p\">{</span>\n<span class=\"w\">        </span><span class=\"c1\">// Django &gt;= 4.1</span>\n<span class=\"w\">        </span><span class=\"nx\">handleFormsetAdded</span><span class=\"p\">(</span><span class=\"nx\">event</span><span class=\"p\">.</span><span class=\"nx\">target</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"nx\">event</span><span class=\"p\">.</span><span class=\"nx\">detail</span><span class=\"p\">.</span><span class=\"nx\">formsetName</span><span class=\"p\">)</span>\n<span class=\"w\">    </span><span class=\"p\">}</span><span class=\"w\"> </span><span class=\"k\">else</span><span class=\"w\"> </span><span class=\"p\">{</span>\n<span class=\"w\">        </span><span class=\"c1\">// Django &lt; 4.1, use $row and formsetName</span>\n<span class=\"w\">        </span><span class=\"nx\">handleFormsetAdded</span><span class=\"p\">(</span><span class=\"nx\">$row</span><span class=\"p\">.</span><span class=\"nx\">get</span><span class=\"p\">(</span><span class=\"mf\">0</span><span class=\"p\">),</span><span class=\"w\"> </span><span class=\"nx\">formsetName</span><span class=\"p\">)</span>\n<span class=\"w\">    </span><span class=\"p\">}</span>\n<span class=\"p\">})</span>\n</code></pre></div>\n</section>\n</section>","rootId":"javascript-customizations-in-the-admin","toc":[{"title":"Imeachtaí foirm inlíne","anchor":"inline-form-events","children":[{"title":"Leaganacha tacaíochta de Django níos sine ná 4.1","anchor":"supporting-versions-of-django-older-than-4-1","children":[]}]}],"breadcrumbs":[{"docname":"ref/index","title":"Tagairt API","url":"/ga/6.0/ref/"},{"docname":"ref/contrib/index","title":"Pacáistí contrib","url":"/ga/6.0/ref/contrib/"},{"docname":"ref/contrib/admin/index","title":"Suíomh riaracháin Django","url":"/ga/6.0/ref/contrib/admin/"}],"prev":{"docname":"ref/contrib/admin/admindocs","title":"Gineadóir doiciméadaithe riaracháin Django","url":"/ga/6.0/ref/contrib/admin/admindocs/"},"next":{"docname":"ref/contrib/auth","title":"django.contrib.auth","url":"/ga/6.0/ref/contrib/auth/"},"formats":{"html":"/ga/6.0/ref/contrib/admin/javascript/","markdown":"/ga/6.0/ref/contrib/admin/javascript.md","json":"/ga/6.0/ref/contrib/admin/javascript.json"},"source":"https://github.com/django/django/blob/stable/6.0.x/docs/ref/contrib/admin/javascript.txt","official":"https://docs.djangoproject.com/ga/6.0/ref/contrib/admin/javascript/","inVersions":["6.1","6.0","5.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}