Skip to Content
Menu
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
To pytanie dostało ostrzeżenie
2 Odpowiedzi
9645 Widoki

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.

Awatar
Odrzuć
Autor Najlepsza odpowiedź

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)"/>
Awatar
Odrzuć
Najlepsza odpowiedź

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

Awatar
Odrzuć
Autor

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??

Powiązane posty Odpowiedzi Widoki Czynność
4
gru 15
6387
1
wrz 23
5134
1
mar 15
4773
2
wrz 23
9007
0
paź 24
1289