несколько входов с похожими именами - PullRequest
3 голосов
/ 04 августа 2010

Итак, у меня есть несколько входов с именем сеанса, и они увеличиваются .... session0 session1 session2. Если я хочу провести их через цикл, как бы я это сделал? Я использую jquery.

например ..

for(i=0,i<10,i++)
{
var num = (session + i).value + i;
}

Итак, я хочу, чтобы цикл проходил через все входы с префиксом сеанса и выводил их значения в переменную. Этот выход может войти в массив. если бы массив явно выглядел больше как.

num[i] = stuff+i;

спасибо.

Хорошо, я закончил с JavaScript. Спасибо за помощь, она отлично работает. здесь был окончательный код.

function get()
{
var alldata;
var values = [];
      $("input[name^='media']").each(function(i, anInput) {
        var check = values[i] = $(anInput).attr('checked');
        if(check == true)
        {
        var ID = "session" + i;
        var type = $(anInput).attr('value');
        if(i > 9)
        {
        var cont = "#ex"+ i;
        }
        else{
        var cont = "select[name='" + ID + "']";
        }
        var scope = $(cont).attr('value');
        if(!alldata)
        {
        alldata = type + ': ' + scope + ' ';
        }
        else
        alldata =  alldata + ' ' + type + ': ' +  scope + ' ';
        };

      })
$('#sessions').attr('value',alldata);
}

Ответы [ 2 ]

4 голосов
/ 04 августа 2010

Как насчет этого:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
    <head>
      <script type="text/javascript" charset="utf-8" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
      <script type="text/javascript" charset="utf-8">
        $(document).ready(function() {
          var values = [];
          $("input[name^='session']").each(function(i, anInput) {
            values[i] = $(anInput).val();
          })
        })
      </script>
    </head>
    <body>
        <input type="text" value="5" name="session0" />
        <input type="text" value="7" name="session1" />
        <input type="text" value="2" name="session2" />
        <input type="text" value="1" name="session3" />
    </body>
</html>
4 голосов
/ 04 августа 2010

Используйте функцию выбора starts with ^ и each следующим образом:

var arr = new array();
$('input[name^="session"]').each(function(){
   alert($(this).val());
   // arr[] = $(this).val();
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...