vojtech-dobes / nette.ajax.js

Flexible AJAX for Nette Framework. Supports snippets, redirects etc.
https://componette.org/vojtech-dobes/nette.ajax.js/
MIT License
149 stars 85 forks source link

Remove snippet #97

Open h4kuna opened 10 years ago

h4kuna commented 10 years ago

Mám usecase: "Smazání řádku, souboru ..."

Tak nechci snippet překreslovat něčím co bude prázdné ale rovnou ho smazat už ho nepotřebuji.

updateSnippet: function ($el, html, back) {
        if(html === 'remove') {
            return $el.remove();
        }

Když mám například snippet jako tag li tak tímto se mi smaže a nezůstane prázdná tečka v seznamu.

vojtech-dobes commented 10 years ago

How should API look?

h4kuna commented 10 years ago

In presenter i have this

$this->payload->snippets['snippet--delete' . $fileId] = 'remove';

than javascript above is valid.

Html:

<li id="snippet--delete2">
filename.png
 <a class="ajax" href="/file/delete?fileId=2">smazat</a>
</li>
h4kuna commented 9 years ago

Now I use like this.

var ajax = $.nette.ext('snippets');
var extendFce = ajax.applySnippet;
ajax.applySnippet = function ($el, html, back) {
    if (html === 'remove') {
        $el.remove();
        return;
    }
    extendFce($el, html, back);
};

If html is string 'remove' than snippet is removed.