-2


キーを使用していくつかの値を配列にプッシュしようとしていますが、キーを使用して詳細をフェッチして、アラート メッセージにテーマを表示したいと考えています。
これが私が試した私のコードです
Jsfiddle
Html

<table>  

            <tr class='itemIndex'>
                <td class="id">18445</td>
                <td class="firstName">Kakali</td>
                <td class="occupation">Poultry farm</td>
                <td class="sector">Business</td>
                <td class="userInvestment">200</td>
             </tr>

            <tr class='itemIndex'>
                <td class="id">18560</td>
                <td class="firstName">Jamuna</td>
                <td class="occupation">Handloom Work</td>
                <td class="sector">Business</td>
                <td class="userInvestment">300</td>
             </tr>

            <tr class='itemIndex'>
                <td class="id">18562</td>
                <td class="firstName">Champa</td>
                <td class="occupation">Paddy processing</td>
                <td class="sector">Business</td>
                <td class="userInvestment">200</td>
             </tr>
</table>

脚本

$(document).ready(function(){  
var cartItem = [{id:''},{name:''},{occpation:''},{sector:''},{amount:''}];   
            $('.itemIndex').each(function(){
                var element = $(this);
                var itemId= element.children('.id').text();
                var firstName = element.children('.firstName').html();
                var occupation = element.children('.occupation').html();
                var sector = element.children('.sector').html();
                var userInvestment = element.children('.userInvestment').html();
                cartItem.push[{'id':+itemId},{'name':+firstName},{'occpation':+occupation},{'sector':+sector},{'amount':+userInvestment}];
            }).promise().done(function(){
                for(var i=0;i<cartItem.length;i++)
                {               alert(cartItem.id[i],cartItem.name[i],cartItem.occupation[i],cartItem.sector[i],cartItem.amount[i]);
                } 
            });    
});
4

3 に答える 3

3

次のような意味ですか::

$(document).ready(function(){  
var cartItem = [];   
            $('.itemIndex').each(function(){
                var element = $(this);
                var itemId= element.children('.id').text();
                var firstName = element.children('.firstName').html();
                var occupation = element.children('.occupation').html();
                var sector = element.children('.sector').html();
                var userInvestment = element.children('.userInvestment').html();
                //alert(itemId);
                cartItem.push({'id':itemId,'name':firstName,'occupation':occupation,'sector':sector,'amount':userInvestment});
                //console.log( cartItem );
            }).promise().done(function(){
                 console.log( cartItem );
                for(var i=0;i<cartItem.length;i++) {
                    console.log(cartItem[i].id,cartItem[i].name,cartItem[i].occupation,cartItem[i].sector,cartItem[i].amount);
                } 
            });    
});

更新されたフィドル

于 2013-08-07T04:49:04.790 に答える
0

Javascript は初めてなので、多くのコード エラーがありました。私はあなたのエラーを修正しました、そしてそれは働いています。

アラートの代わりに console.log の使用方法を学ぶことをお勧めします

$(document).ready(function() {   var cartItem = [];   $('.itemIndex').each(function() {
    var element = $(this);
    var itemId = element.children('.id').text();
    var firstName = element.children('.firstName').html();
    var occupation = element.children('.occupation').html();
    var sector = element.children('.sector').html();
    var userInvestment = element.children('.userInvestment').html();
    cartItem.push({
      'id' : itemId,
      'name' : firstName,
      'occpation' : occupation,
      'sector' : sector,
      'amount' : userInvestment
    });   })   for ( var i = 0; i < cartItem.length; i++) {
    alert(JSON.stringify(cartItem[i]));   } });

作業フィドル: http://jsfiddle.net/vmszk/9/

于 2013-08-07T05:01:45.857 に答える
0

あなたが何をしているのか正確にはわかりませんが、このコードを検討してください(フィドルhttp://jsfiddle.net/vittore/vmszk/7/

$(document).ready(function(){

var cart = []

$('.itemIndex').each(function() {
    var item = {}

    $(this).children().each(function() {
       item[this.className] = this.innerHTML;  
    })
    cart.push(item)        
})


$('pre').text(JSON.stringify(cart))


});
于 2013-08-07T04:52:48.183 に答える