2013-07-17 80 views
0

如何在Javascript和Array中對數組和字符串運行getelementbyid,並將其設置爲非空的變量,例如foo [「dog」] x = getelementbyid(foo [0] +「食物」),現在X =狗食將javascript中的數組和字符串追加到變量中

<script> 
    var myrows = new Array(); 

    $(function() { 
    $("#check").click(function(){ 
     myrows=[] 
     $(".head input:checked").not("#selectall").each(function(){ 
     myrows.push($(this).parent().attr("id")); 
     }).value; 

     alert(myrows); 
    }); 

    $("#subbut").click(function(){ 
     var x; 
     var r=confirm("Are you sure you?"); 

     if (r==true){ 
     x="You pressed OK!"; 
     }else{ 
     Object.cancel; 
     } 

     **alert(myrows[0]+"servername" + " before"); 

     for(var i =0; i< myrows.length; i++){ 
     alert(myrows[i] +"rootname" +" in loop"); 
     var j= document.getElementById(xmyrows[i] +"rootname"); 
     alert(j+" after call"); 
     var y = document.getElementById(myrows[i]+"servername"); 

     document.getElementById("id_rootname").value= j.textContent; 
     document.getElementById("id_servername").value= y.textContent ;** 

     $.post($("#forms").attr("action"), $("#forms").serialize(), function(data) { 

     }); 
     } 
    }); 
    }); 

</script> 
+0

你需要一個iframe目標的形式,以避免刷新 – dandavis

+2

可以,除非你使用Ajax將表單數據傳遞到我的工作服務器 –

+0

只能提交一個表單在Django中必須有一種方法來提交多個表單上的一個按鈕點擊 –

回答

0

這可能會發生,因爲如果字符串與數字串聯,java腳本有時會允許空格。嘗試刪除空格並創建一個字符串,然後將其傳遞給getElementById。

例如:

​​
1

我真的不明白數組/串的問題是什麼,但是從評論,似乎你正在尋找一個方式做動態表單提交:Dan Davis已經提供瞭解決方案的一些細節和方法in his comment - 對於需要動態提交(不刷新)的每個表單,創建一個iframe,然後將相應表單的目標屬性設置爲該iframe的ID:

<form id="form1" target="#form1Response"> 
    ... 
</form> 
<form id="form2" target="#form2Response"> 
    ... 
</form> 
<iframe id="#form1Response"></iframe> 
<iframe id="#form2Response"></iframe> 

然後,您需要將服務器響應回調附加到各種iframe的load事件中。但要小心:即使是空的iframe也會觸發加載事件,因此您需要在回調中過濾誤報(空的iframe內容)。

另一個警告:如果您的服務器響應JSON,IE會提示用戶在您的腳本可以攔截之前保存對文件系統的響應 - 所以請確保MIME類型標題設置爲text/plain或text/html確保將響應加載到iframe的DOM中。

+0

我已經想出瞭如何動態表單提交問題是我需要填寫文本框與數據和var j = document.getElementById(myrows [i] .valueOf()+「rootname」);當它應該是row#rootname時,我的j返回null。 –

相關問題