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

Hi guys,

I'm trying to detect the event onchange from a selection field.

def onchange_changeday(self, cr, uid, ids, day_type, context=None):
    if day_type == "Complete":
        x = "09:00"
        return {'value':{'hour_begin': x }}

_columns = {
        'hour_begin':fields.char("Hour", size = 20),
        'day_type':fields.selection([('Complete', 'Complete'), ('Noncomplete', 'NonComplete')])
}

And then in the XML view I have:

<field name="hour_begin" placeholder="00:00" class="oe_inline_hour"/>
<field name="day_type" onchange="onchange_changeday(day_type)"/>

The goal was to whenever I change the selection to "Complete" it completes the field "hour_begin" with the value "09:00". I don't receive any errors, but it's not working either.

Thanks.

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

Solved.

def onchange_changeday(self, cr, uid, ids, day_type, context=None):
    if day_type:
        x = day_type
        if x == "Complete":
              return {'value':{'hour_begin': '09:00',},}
    return {'value': {}}

<field name="day_type" on_change="onchange_changeday(day_type, context)"/>
الصورة الرمزية
إهمال
أفضل إجابة

<field name="day_type" on_change="onchange_changeday(day_type)"/> .. you dont need to put context

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

Yes I do. In v7, you need to use context. I tried without it, and didn't work.

really?? im also using v7 and im not using context for my onchange and it is working for me.. Anyway what matter is it is working in a way we want it. Right??

المنشورات ذات الصلة الردود أدوات العرض النشاط
4
ديسمبر 15
6241
1
سبتمبر 23
4970
1
مارس 15
4643
2
سبتمبر 23
8821
0
أكتوبر 24
1168