0

N個の段落タグがあります。各段落タグにはいくつかの番号があります。これらの数値を取得して変数に格納したいと思います。例えば:

<p id="id_1">1</p>
<p id="id_2">2</p>
<p id="id_3">3</p>
<p id="id_2">4</p>
and so on...

これらの番号は、入力テキストフィールドからフェッチされ、段落タグ内に保存されます。これらの数値をnumbersという変数に格納したいと思います。

<input type="text" id="numerics" />      //using #numeric.val(); I stored the numbers in paragraph

そして、jsは次のとおりです。

var numbers = parseInt($("#id_'+$('#numeric').val()+'").text().trim(), 10);

しかし、それは機能しません。ありがとう..

4

3 に答える 3

1

引用符を誤用しました。

使用する

var number = parseInt($('#id_'+$('#numeric').val()).text().trim(), 10);

すべてのid_*段落から配列を作成するには、次のようにします。

var numbers = $('p[id^="id_"]').map(function(){
     return parseInt($(this).text().trim(), 10)
}).get();

結果 :[1, 2, 3, 4]

インデックスは1ではなく0から始まることに注意してください。したがって、入力を使用して数値を検索する場合は、次のことを行う必要があります。

var number = numbers[parseInt($('#numeric').val().trim(),10)-1];
于 2013-02-19T09:28:10.933 に答える
1

これを試して

var numbers = parseInt($("#id_"+$('#numeric').val()).text().trim(), 10);
于 2013-02-19T09:29:44.223 に答える
0

これは、それらをどのように配列に格納するか、または単に要約するかによって異なりますか?

これが両方の例です。

http://jsfiddle.net/z4HL4/1/

$("document").ready(function(){
    var numbers = [];
    var sum = 0;

    $("p").each(function(i){

        // get the number as int
        var idNumber = parseInt($(this).attr("id").replace("id_", ""), 10);

        // save in array
        numbers[i] = idNumber;

        // add to our sum
        sum += idNumber;
    });

    // as array
    console.log(numbers);

    // as sum
    console.log(sum);
});
于 2013-02-19T09:36:10.690 に答える