Thank you for the quick and clean answer. It is one more entry in my todo 
list - Ajax! 

On Wednesday, December 19, 2012 9:00:39 PM UTC+2, ke1g wrote:
>
>
>
> On Wed, Dec 19, 2012 at 1:34 PM, Andriyko <[email protected] <javascript:>
> > wrote:
>
>> Hello dear Django Users!
>>
>> I'm trying to use django inclusion_tag or/and assignment_tag with jquery 
>> 'onclick' event.
>> Encountered such problems:
>> 1. When using inclusion_tag/assignment_tag the content returned by them 
>> is rendered on page load, not onclick.
>> And I suspect that it is correct behavior, once the tag is met it is 
>> rendered by template render. So, I think that should be some way to skip 
>> django tags? How?
>>
>> 2. With inclusion_tag the result returned by tag is shown in the place 
>> where it was called, not where it is 'intended' to be.
>> And again, I think it is correct. But how to use inclusion_tag really 
>> onclick event?
>> For example,
>> -------------------
>> <script>
>>         $(function() {
>>             var result = $("#select-result").empty();
>>             $('#myid').somecontainer({animate:true,
>>                 onClick: function(node){
>>                    result.html('{% my_inclusion_tag "param1" "param2" 
>> %}');
>>                 }
>>             });
>>         });
>>     </script>
>> -------------------
>> As the result(in source of loaded page) I have content returned by 
>> inclusion_tag inside <script></script>, not under  #select-result div.
>> Like 
>> ...
>> onClick: function(node){
>>                    result.html(<table>lalalala</table>);
>>  }
>> ...
>>
>> The code that works as expected :), onclick not onload.
>>
>> <script>
>>         $(function() {
>>             var result = $("#select-result").empty();
>>             $('#myid').somecontainer({animate:true,
>>                 onClick: function(node){
>>                    alert(node.text);
>>                 }
>>             });
>>         });
>> </script>
>>
>>
>> The tags are just a feature of the template language.  Their purpose is 
> to render the response that django will send to the browser.  There is no 
> automatic coupling to actions in the browser.  As you note, by the time 
> that the initial page load completes, the tags have finished all that they 
> are going to do.
>
> I'm guessing that what you want calls for an AJAX scheme: You arrange for 
> click to produce an AJAX request (there is jquery support), which the 
> browser sends back to a specified (almost certainly different) url (but 
> probably on the same server/django).  Your urlconf must route this to a 
> view that recognizes the AJAX request, and returns data (xml, json, ...) 
> needed to define the content that you want to show, and returns it as a 
> response.  When this arrives back at the browser, a JavaScript function 
> that you have designated as the AJAX request's success callback is invoked 
> with access to the returned data.  This function must modify the DOM 
> according to the data.
>
> Bill
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/django-users/-/d6ZxDwZW7qUJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to