2016-08-23 3 views
0

こんにちは、私はレコードを表示するテーブルを持っており、私はjqueryのメソッド.html()を使用してテーブルを表示しています。 help..Hereは.html()はテーブルを表示するjqueryで動作していません

$(document).ready(function(){ 
$('#dateButton').click(function(){ 
var val=$('#datetextboxid').val(); 
    $.ajax({ 
     url : 'T_Oms_08_D_Delivery_Servlet', 
     type : 'POST', 
     dataType : 'json', 
     success : function(json) { 
      var dateTableRow = ""; 
      var headerOfTable="";      
      $.each(json, function(key, value){ 
       if(value.date==val){ 
        dateTableRow=dateTableRow 
        +"<tr bgcolor='#F0F8FF'>" 
        +"<td>" + value.omsOrderId+ "</td>" 
        +"<td>" + value.orderId+ "</td>" 
        +"<td>" + value.customerId+ "</td>" 
        +"</tr>"; 
       } 
      }); 
      headerOfTable=headerOfTable 
      + "<tr bgcolor='#6495ED'>" 
      +"<td>Order DB ID</td>" 
      +"<td>Order ID</td>" 
      +"<td>Customer ID</td>" 
      +"</tr>"; 
      $("#form").html(headerOfTable+dateTableRow).fadeOut(2000).fadeIn(1000); 
     }, 
     error : function(xhr, status, errorThrown) { 
      alert("Sorry, there was a problem!"); 
      console.log("Error: " + errorThrown); 
      console.log("Status: " + status); 
      for (key in xhr) 
       console.log(key + ":" + xhr[key]); 
     }, 
     complete : function(xhr, status) { 
      //alert("The request is complete!"); 
     } 
    }); 
    }); 
}); 

「datebutton」私のjavascriptのコードである私がクリックして、テーブルを参照することが出来るのですbutton.whereのIDでください。ここ はvelowコードを試し、簡単に見てから、私のhtmlコード

<div id="divOfDateTable"> 
Search:<input type="text" id="datetextboxid"><button id="dateButton">Search</button> 
<table cellpadding="5" cellspacing="1" border="1" style="empty-cells: hide;" width="2800" > 
<tbody id="form"> 
</tbody> 
</table> 
</div> 
+2

HTMLコードを貼り付けることができます –

+2

'#form'はテーブル要素のIDですか? – Archer

+0

テーブルに正しいコンテンツが表示されない、または問題を誤解してしまったという問題はありますか? – TrueStory

答えて

0

です:

$(document).ready(function(){ 
    $('#dateButton').click(function(){ 
    var val=$('#datetextboxid').val(); 
     $.ajax({ 
      url : 'T_Oms_08_D_Delivery_Servlet', 
      type : 'POST', 
      dataType : 'json', 
      success : function(json) { 
       var dateTableRow = ""; 
       var headerOfTable="";  
     $.each(json, function(key, value){ 
         if(value.date==val){ 
          dateTableRow+="<tr bgcolor='#F0F8FF'>" 
          +"<td>" + value.omsOrderId+ "</td>" 
          +"<td>" + value.orderId+ "</td>" 
          +"<td>" + value.customerId+ "</td>" 
          +"</tr>"; 
         } 
        }); 
        headerOfTable+= "<tr bgcolor='#6495ED'>" 
        +"<td>Order DB ID</td>" 
        +"<td>Order ID</td>" 
        +"<td>Customer ID</td>" 
        +"</tr>"; 
    $("#form").html(headerOfTable+dateTableRow).fadeOut(2000).fadeIn(1000); 
      }, 
      error : function(xhr, status, errorThrown) { 
       alert("Sorry, there was a problem!"); 
       console.log("Error: " + errorThrown); 
       console.log("Status: " + status); 
       for (key in xhr) 
        console.log(key + ":" + xhr[key]); 
      }, 
      complete : function(xhr, status) { 
       //alert("The request is complete!"); 
      } 
     }); 
     }); 
    }); 

理由:理由は動作していないためかもしれませんが、この2行を下回っている -

if(value.date==val){ 
        dateTableRow=dateTableRow 
        +"<tr bgcolor='#F0F8FF'>" 
} 
headerOfTable=headerOfTable 
"<tr bgcolor='#6495ED'>" 

文字列の次の行をアタッチするために、それ自身のラフターに空の変数を割り当てます。私はdateTableRow=dateTableRowdateTableRow= +"<tr bgcolor='#F0F8FF'>"に、headerOfTable=headerOfTableheaderOfTable+="<tr bgcolor='#6495ED'>"に変更しました。これが役に立つと願っています。

+0

あなたは何を言っているのですかそれを得た...同じコード私は何を投稿したと思う.. –

+0

が説明を追加しました。 downvoteの理由? @Rohitkolhe –

+0

しかし、Nalinは、同じコードが.on( 'change'、function())イベントの出力を与えていたので、それがテーブルを認識できない理由だとは思わない。そして、null変数について言いたいのであれば、各関数の外でこれらの2つの変数を定義しているので、html()で空の文字列を取得する機会はありません。それらが各関数に含まれていれば空の文字列html() –

関連する問題