2015-03-25 2 views
1

Создано текстовое поле в javascript, нужно ли это значение передать в массивы, чтобы добавить их? Как мне это сделать? Я просто хочу, чтобы мой код был коротким и простымЯ пытаюсь сделать текстовое поле в javascript и отправить введенные значения в текстовое поле в массиве, чтобы добавить их

Я застрял! Код:

<html> 
    <head> 
     <title> 2 NUM ADD VIA ARRAY </title> 
    </head>  
    <body bgcolor= "red" </body> 

    <script type = "text/javascript"> 
    function sum() 
    { 
    var sum = [],i=0; 


    sum[i]= document.getElementById('i+1').value; 

    alert("sum =" + sum); 
    } 
    </script> 
    <table border=2> 
      <TR> 
       <TD> 

        <input type="text" id="1" /input> 

       </TD> 
       <TD> 
        <input type="text" id="2" /input> 
       </TD> 
      </TR> 
    </table> 

    <button name="btHello" onclick="sum();">sum</button> 

</html> 

ответ

0

Надеюсь, мой пример помогает. Я предлагаю использовать jQuery. Это делает его намного проще.

function foo() { 
 
    var s = []; 
 
    $(".foo").each(function() { 
 
     s.push($(this).val()); 
 
    }); 
 
    s = s.join(" "); 
 
    alert("sum = " + s); 
 
} 
 

 
$("#btHello").on("click", function() { foo(); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<table border=2> 
 
    <tr> 
 
     <td> 
 
      
 
      <input type="text" class="foo" /input> 
 
       
 
      </td> 
 
      <td> 
 
       <input type="text" class="foo" /input> 
 
       </td> 
 
    </tr> 
 
</table> 
 
<button id="btHello">sum</button>

1

Использование массива в данном случае не требуется в соответствии с me.I предлагаю вам сделать это даже без использования массивов. Это делает ваш код простым и коротким

<html> 
     <head> 
      <title> 2 NUM ADD VIA ARRAY </title> 
     </head>  
     <body bgcolor= "red" </body> 

     <script type = "text/javascript"> 
     function sum() 
     { 
       var sum= 0; 
      $('.textbox').each(function() { 
       sum += Number($(this).val()); 
       }); 
       alert(sum);  
     } 
     </script> 
     <form> 
     <table border=2> 
       <TR> 
        <TD> 

         Text 1 :<input type="text" class="textbox" id="1" /> 

        </TD> 
        <TD> 
         Text 2 :<input type="text" class="textbox" id="2" /> 
        </TD> 
       </TR> 
     </table> 

     Submit : <input type = "submit" name="btHello" onclick="sum();"> 
     </form> 
    </html> 
+0

Благодаря мат, я решил эту проблему! –

0

Я абсолютно уверен, какого результата вы хотите, но это должно помочь вам на вашем пути. Если это не совсем то, что вам нужно, попробуйте объяснить свою цель немного больше. :)

Счастливый упа

function sum() 
 
    { 
 
     
 
var sum = []; 
 
    sum.push(document.getElementById('1').value); 
 
    sum.push(document.getElementById('2').value); 
 

 
// sum of all values 
 
totalSum = 0; 
 
for (var i = 0; i < sum.length; i++) { 
 
    totalSum += parseInt(sum[i]); 
 
} 
 
    alert("sum = " + totalSum); 
 
    }
<html> 
 
    <head> 
 
     <title> 2 NUM ADD VIA ARRAY </title> 
 
    </head>  
 
    <body bgcolor= "red" </body> 
 

 
    
 
    <table border=2> 
 
      <TR> 
 
       <TD> 
 

 
        <input type="text" id="1" /input> 
 

 
       </TD> 
 
       <TD> 
 
        <input type="text" id="2" /input> 
 
       </TD> 
 
      </TR> 
 
    </table> 
 

 
    <button name="btHello" onclick="sum();">sum</button> 
 

 
</html>

Смежные вопросы