Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
3 Odpovědi
30613 Zobrazení

Hello, I want to make a handler for button in footer area using javascript. My view model looks below :

<record id="view_rnd_history_form" model="ir.ui.view">
<field name="name">rnd.history.form</field>
<field name="model">rnd.batch.record.history</field>
<field name="arch" type="xml">
<form string="History" version="7.0">
<group>
<field name="br_id" colspan="2"/>
<label for="start_date" string="Date"/>
<div>
<field name="start_date" class="oe_inline"/> -
<field name="end_date" class="oe_inline"/>
</div>
<field name="batch_number" colspan="2"/>
<field name="parameter_id" colspan="2"/>
</group>
<footer>
<button name="show_history" string="_Show" class="oe_highlight" onclick="alert('hello');"/>
</footer>
</form>
</field>
</record>

I'm confuse. the onclick attribute seem removed by qweb render process. I want a simple thing, user click on show_history button, then it call a simple javascript function or action client. Any information will be appreciate. Thank you.

Avatar
Zrušit
Nejlepší odpověď

I have created a module specifically to do this, you can found it in Odoo apps like "Soltein Button Widget"

The use of this module is like the following example:


<solt_button string="_Show">
    <code><![CDATA[
       jQuery('footer button:first').click(function() { alert('hello'); });
    ]]></code>
</solt_button>

In the code of the button you could access to the widget instance using self and also to the fields of the form using self.view.fields

Avatar
Zrušit
Nejlepší odpověď
<form string="BlaBla">
<sheet>
<script>
YOUR JAVASCRIPT CODE HERE
</scrit>
YOUR XML CODE HERE
</sheet>
</form>


Avatar
Zrušit
Autor Nejlepší odpověď

I added javascript code like this :

...
...
...
<footer>
<button name="show_history" string="_Show" class="oe_highlight"/>
</footer>
<script>
jQuery('footer button:first').click(function() { alert('hello'); });
</script>

 The alert message never called after click the button. Well, I think it related on rendering process by qweb. The jQuery event handler is never attach to button node.  Is it possible to listen render event in qweb? Thanks.


Avatar
Zrušit
Related Posts Odpovědi Zobrazení Aktivita
1
pro 19
10000
0
bře 17
8461
0
čvc 25
254
0
čvn 25
476
1
čvn 25
711