تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
1 الرد
9118 أدوات العرض

Js Xml  Path:static-src-xml:

        <div t-name="widget_1">
           <button type="button" id = "button_1" >Click</button>
          <div id = "test"> </div>
       </div>
       <div t-name="widget_2">
            <p>Second Widget</p>
       </div>
Js:

odoo.define("module_name.name", function(require) {
    "use strict";
     var Widget = require("web.Widget");
            var Widget_Extend = Widget.extend({
            template: "widget_1",

            start: function() {
                 var self = this;
                 $(document).ready(function(){
                       setTimeout(function(){
                            $(document).on("click", "#button_1", function() {
                            var widget_call = '';
                            widget_call = '<div id ="test"></div>'
                            widget_call + = '<t t-call="widget_2"/>'
                            $('#test').html(widget_call);
                        });
                   });
             });
        }
    });
 core.action_registry.add("module_name.name", Widget_Extend);

});


Note:
I have tried to call "widget_2" using js but i could not get what i expect. I am not sure this the way to call the widget but i have tried a lot. If any one have some other way to call the 2nd widget from 1st widget using js kindly let me know.


Anticipating all kind of information about this problem.

Thanks.

الصورة الرمزية
إهمال
أفضل إجابة

Hi Sibi,
I think what you need to do is just render the template using its name. So instead of trying to call the widgets, just render them like,
var template_content = $(QWeb.render('widget_2'));
here 'widget_2' is the name, and then you can update the content

$('#test').html(template_content);


Thanks

الصورة الرمزية
إهمال
الكاتب

Thanks for your reply. This information literally useful to me to fix this issue thanks a lot.

المنشورات ذات الصلة الردود أدوات العرض النشاط
1
ديسمبر 18
8787
2
فبراير 18
4510
0
أكتوبر 17
4978
4
أكتوبر 17
4401
0
يوليو 17
2610