2017-04-23 8 views
0

django 1.10에서 한 HTML 템플릿의 매개 변수를 view.py으로 다시 전달하고 마지막으로 동일한보기를 다시 렌더링해야합니다.자바 스크립트를 사용하여 장고 양식의 작업 설정

문제는 javascript를 사용하는 html에 action을 설정하는 것입니다.

이 내 HTML 템플릿입니다 : 사용자가 (드롭 다운 선택기를 사용하여) 웹 페이지와 상호 작용으로

<form method='POST' action='/res/{{link}}/{{page_id}}/{{email}}/'> 
     <input type="hidden" name="email" value="{{email}}"> 
     <input type="image" type='submit' src={% static "assets/images/twitter_icon.png" %}> 
</form> 

{{page_id}}action의 변화.) (

<form method='POST' action='post_redirect_link()'> 
     <input type="hidden" name="email" value="{{email}}"> 
     <input type="image" type='submit' src={% static "assets/images/twitter_icon.png" %}> 
</form> 

대신, 내가 유형 /res/correct_link/post_redirect_link()/correct_email, "post_redirect_link의 리디렉션을 얻을 다음 자바 스크립트는이 잡을 수있을 것입니다 :

<script> 
function post_redirect_link() { 
    var page_id = document.getElementById("sel1").options.selectedIndex; 
    return '/res/{{link}}/'+page_id+'/{{email}}/' 
} 
</script> 

을 그리고 동적으로 action을 설정하려고 "는 js 메서드에서 반환 된 값이 아니라 문자열로 간주됩니다.

의견이 있으십니까?

+0

시도해보십시오.

그리고 함수에서 원하는 주소로'post' 호출을합니다. – Algorithmatic

답변

0

다음을 시도해보십시오.

<form action="#" method='POST'> 
    <script> 
    function changeAction() { 
     var page_id = document.getElementById("sel1").options.selectedIndex; 
     var url = '/res/{{link}}/'+page_id+'/{{email}}/'; 
     document.forms[0].action = url; 
    } 
    </script> 
    <input type="hidden" name="email" value="{{email}}"> 
    <input type="image" type='submit' onmouseover="changeAction()" src={% static "assets/images/twitter_icon.png" %}> 

</form> 
관련 문제