2015-06-29 76 views
-2

我在html中創建表單,我想在javascript數組中添加表單值。我該怎麼做?如何在javascript數組中輸入HTML輸入?

<!DOCTYPE html> 
<html> 
    <head> 
     <script src="array.js" type="text/JavaScript"></script> 
    </head> 
    <body> 
     <h2>Input Array</h2> 
     <form method="post"> 
      <input type="text" id="first"/> 
      <input type="text" id="second"/> 
      <input type="text" id="third"/> 
      <input type="text" id="fourth" /> 
      <input type="button" value="Submit" OnClick="array();"/> 
     </form> 
    </body> 
</html> 

JavaScript數組中的這四個值並將它們打印在同一頁上。

+3

目的是什麼?爲什麼不使用serialize()? –

+0

我是新來javascript定義請。 –

+0

你爲什麼要數組? –

回答

0

您可以使用serializeArray

對於如:

$("form").submit(function(event) { 
    console.log($(this).serializeArray()); 
    event.preventDefault(); 
}); 

這將產生的結果是這樣的:

[ 
    { 
    name: "a", 
    value: "1" 
    }, 
    { 
    name: "b", 
    value: "2" 
    }, 
    { 
    name: "c", 
    value: "3" 
    }, 
    { 
    name: "d", 
    value: "4" 
    }, 
    { 
    name: "e", 
    value: "5" 
    } 
] 

注:

不要忘記通過名稱在您的輸入元素。對於如:<input type="text" id="first" name="a" />

+0

感謝這個方法的朋友.. 但你會告訴我,是否有可能通過HTML輸入添加「薩博」,「沃爾沃」價值 var cars = [「Saab」,「Volvo」,「BMW」]; –

+0

對不起,不能得到你。 –

0

<script type="text/javascript"> 
    function abc() 
    { 
     formdata= $("#form").serialize(); 
     alert(formdata); 
    } 

    </script> 
</head> 
<body> 
    <h2>Input Array</h2> 
    <form method="post" id="form"> 
     <input type="text" id="first" name="a" /> 
     <input type="text" id="second" name="b"/> 
     <input type="text" id="third" name="c"/> 
     <input type="text" id="fourth" name="d" /> 
     <input type="button" value="Submit" OnClick="return abc();"/> 
    </form> 
</body> </html> 
0

這是一些修改HTML代碼

<!DOCTYPE html> 
<html> 
    <head> 
     <script src="array.js" type="text/JavaScript"></script> 
    </head> 
    <body> 
     <h2>Input Array</h2> 
     <form method="post"> 
      <input type="text" id="first" class="vals"/> 
      <input type="text" id="second" class="vals"/> 
      <input type="text" id="third" class="vals"/> 
      <input type="text" id="fourth" class="vals"/> 
      <input type="text" id="fifth" class="vals"/> 
      <input type="button" value="Submit" OnClick="array();"/> 
     </form> 
     <p id="temp"></p> 
    </body> 
</html> 

和你的JavaScript函數將這個

function array(){ 
    var arr = []; 
    var valElements = document.getElementsByClassName("vals"); 
    var tempstr = ""; 
    /* retrieve the input from textbox 
     and store in an array 
    */ 
    for(i=0; i<valElements.length; i++){ 
     arr[i] = valElements[i].value; 
     tempstr = tempstr+arr[i]; 
    } 

    /* use the input on your page */ 
    var a = document.getElementById("temp"); 
    a.innerHTML = tempstr; 
} 
+0

但是當我不知道值的數量? –

+0

那麼爲什麼必須給文本框的ID?相反,你可以將它們分類在一起,然後循環。 – Shri

+0

@MuhammadSohaibRoomi現在檢查代碼 – Shri