我正在尋找一種方法將一些隱藏的表單數據發送到Django服務器,只要將JavaScript和html(模板)保存在同一個文件中,但現在我試圖將它們分開。從javascript文件訪問webform
可能真的很簡單,但我想我所要做的就是獲取(set?)window/html的'name'並從javascript模塊訪問它?
HTML:
<html>
<head>
<script src="/media/postIt.js"></script>
</head>
<body>
<form action="" method="post" id="postForm">{% csrf_token %}
<input type="hidden" id="scoreField1" name="score1"></input>
<input type="hidden" id="scoreFieldSet1" name="score1Set"></input>
<input type="hidden" id="scoreField2" name="score2"></input>
<input type="hidden" id="scoreFieldSet2" name="score2Set"></input>
<input type="hidden" id="scoreField3" name="score3"></input>
<input type="hidden" id="scoreFieldSet3" name="score3Set"></input>
</form>
<table>
<tr>
<td id="bg1" onclick="postIt('score1')">
Ones
</td>
<td id="bg1_1">
</td>
</tr>
<tr>
<td id="bg2" onclick="postIt('score2')">
Twos
</td>
<td id="bg2_1">
</td>
</tr>
</table>
的Javascript:
function postIt(x){
var pointArray = [d1,d2,d3,d4,d5];
var totVal = d1+d2+d3+d4+d5;
pointArray.sort(function(a,b){return a-b});
alert(pointArray);
alert("total value: " + totVal);
if(x == "score2"){
if("{{ res.score2Set }}" == 0){
var form = document.getElementById('postForm');
document.getElementById('scoreField1').value = score1;
document.getElementById('scoreFieldSet1').value = score1Set;
document.getElementById('scoreField2').value = score;
document.getElementById('scoreFieldSet2').value = 1;
document.getElementById('scoreField3').value = score3;
document.getElementById('scoreFieldSet3').value = score3Set;
form.submit();
}
}
編輯: 澄清: 我不能只調用document.getElement達到HTML '文檔' 中的元素...因爲他們現在在不同的文件(物理上)。我想我必須以某種方式爲文檔分配一個名稱/變量。 而這樣稱呼它: nameOfDocument.getElement ..
等..
你的問題是什麼?什麼對您發佈的代碼無效(對我來說很好)? –
編輯我的問題。 – BSG
「我無法訪問html文檔中的元素」 - 真的嗎?你真的嘗試過嗎? –