[英]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.