簡體   English   中英

在js函數中的Python內聯不能正常工作

[英]Python inline in a js function doesn't works fine

我有個問題。 我有這個js功能:

 <script>
function checkall(perm){

var permall = parseInt(perm);

if (permall==0) {
    {% for user in users %}
    document.getElementById("perms_{{user.id}}_0").checked=true
    document.forms['form_user_{{ user.id }}'].submit();
    {% end %}}
else if (permall==1) {
    {% for user in users %}
    document.getElementById("perms_{{user.id}}_1").checked=true
    document.forms['form_user_{{ user.id }}'].submit();
    {% end %}}
else if (permall==4) {
    {% for user in users %}
    document.getElementById("perms_{{user.id}}_4").checked=true
    document.forms['form_user_{{ user.id }}'].submit();
    {% end %}}

 }
</script>

當我單擊一個按鈕時,我調用此函數,對於用戶列表中的每個用戶,設置為檢查相對權限的用戶單選按鈕,然后提交用戶表單以在DB中設置權限(這稱為處理程序在Python)。

現在,設置為檢查單選按鈕的代碼工作正常。 但只提交列表中第一個用戶的表單...該功能僅將權限設置給第一個用戶。 另外,Python處理程序只被調用一次(我做了一些調試打印)。

為什么?

調用表單的submit()動作與您自己按下按鈕完全相同:整個頁面將使用服務器的響應進行刷新(通常是重定向),因此不再處理JS操作。

您需要自己序列化值並通過AJAX提交它們,如果您想一次進行多次提交。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM