콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다
6 답글
20509 화면

How do I execute javascript in qweb? I read through the documentation and it mentioned a t-js tag. But I can't get it to work.

I have created a table in a qweb report. But if the table cannot fully fit onto one page, I need to insert a page-break before the table. Therefore, it becomes a conditional page-break. For this I need to obtain the height of the table. One technique is through javascript:

var table = document.getElementById("tableId");

alert(table.offsetHeight);

I need to execute these lines in QWeb, and then I also need to pass the value of the offset height  from javascript to a qweb variable. Is this possible?

I find QWeb to be a powerful tool for dynamic HTML generation, but sadly, the documentation is very poor.

아바타
취소

I would also love to know how to accomplish this. I believe javascript can be the answer to my question posted here: https://www.odoo.com/forum/help-1/question/qweb-drop-trailing-0s-after-decimal-73314

I've just bumped into the same issue. Per the documentation, it is clear that placing "t-js" node inside the template does exactly what you require (https://www.odoo.com/documentation/8.0/reference/qweb.html). However, as I try it, it just 'prints' the javascript code into the pdf report (¿?), as if it were any regular html tag. Have any of you had any luck with this matter?

Did you ever solve this?

베스트 답변

i solved it with <scriptlanguage="javascript"type="text/javascript">

아바타
취소
베스트 답변

I am also trying to find a solution for this, can anyone help ?

아바타
취소
베스트 답변

In the Odoo Studio : studio_customization where you add the <xpath> elements, inside /t or /t/t
 (<xpath expr="/t/t" position="inside">)
you can ad a script tag just as in html
<script>

//Javascript code

</script>
You can access the DOM and do many other things this way

아바타
취소
베스트 답변

guys, did you solve this? if not, you go like this:

<t t-jquery="[t-set*='columns_count']" t-operation="replace">
<t t-js="ctx">
var table = document.getElementById("tableId");

                        alert(table.offsetHeight);

</t>
<t t-if="show_order_numbers">
</t>
I have put t-jquery just that you know that t-js must go in there, but the value of t-jquery depends where you want to insert your js code.....
아바타
취소
베스트 답변

Same issue, did anyone manage to solve this ?

아바타
취소
베스트 답변


아바타
취소
관련 게시물 답글 화면 활동
0
12월 15
4306
1
3월 15
14359
0
3월 15
3424
3
3월 15
17857
2
6월 25
4550