我想使用java脚本为标题中的按钮创建一个处理程序。我的观点模型如下:
<template id="assets_backend" name="petstore"
inherit_id="web.assets_backend">
<xpath expr="." position="inside">
<script type="text/javascript"
src="/mypetstore/static/src/js/model_access.js">
</script>
<link href="/mypetstore/static/src/css/petstore.css"
rel="stylesheet">
</link>
</xpath>
</template>
<record model="ir.ui.view" id="my_pet_store_form">
<field name="name">my_pet_store_form</field>
<field name="model">petstore.message</field>
<field name="type">form</field>
<field name="arch" type="xml">
<header>
<button name="click_me" string="Click"
class="oe_highlight"/>
</header>
<form string="Message of the day">
<group col="2">
<group>
<field name="data"/>
</group>
</group>
</form>
</field>
</record>
当用户点击“click_me”按钮时,它会调用一个简单的javascript函数或动作客户端。只需打印警报即可。 JS部分: odoo.define('mypetstore.model_access',function(require){ “严格使用”; var Class = require('web.Class'); var Widget = require('web.Widget'); var core = require('web.core'); var utils = require('web.utils');
jq('#click_me').bind('click', function(){
alert("hello");
});
});
答案 0 :(得分:1)
首先我建议你给Object一些ID属性,你想要使用。 像
<button name="click_me" id="click_me" string="Click"
class="oe_highlight"/>
JQuery的:
jq('#click_me').bind('click', function(){
alert("hello");
});
答案 1 :(得分:0)
这就是你的按钮的样子,只需添加onclick
,这就是你的处理程序。
<header>
<button onclick="myFunction()" name="click_me" string="Click"
class="oe_highlight"/>
</header>
myFunction()
将成为您的javascript代码。
现在警报代码将是:
<script type = "text/ javascript">
function myFunction() {
alert("Hello! I am an alert box!!");
}
</script>
希望它有所帮助。