0

私のhtmlコードには2つのリンクがあります。私は両方を使用して、jQuery を使用してデータ要素を読み取ります。ただし、そのうちの 1 つは問題なく動作し、もう 1 つは未定義の値を返します。

htmlは次のとおりです

<a class="loadCustomerInfo" href="#Augustinho" date-customerid="1" date-customername="Augustinho" date-customeraddress="mercado shoprite" date-companyname="Auto Kilimanjaro" date-phoneone="828759460" date-city="0">Augustinho</a>

私が使用する次のjQuery

$(".loadCustomerInfo").live('click',function(){
  //alert("add item");
  var idVar=$(this).data('customerid');
  // alert($(this).innerHTML);

  alert($(this).attr('data-customername'));

  alert($(this).data('customername'));
  var randid = new Date().getUTCMilliseconds();

  $("#customerInfoTable").append('<tr><th id="customerInfoTH" colspan=2>Customer Information</th></tr>' +
  '<tr><th>Customer Name</th> <td>' +$(this).data('customername')+ '</td></tr>' +
  '<tr><th>Company Name</th><td>' +$(this).data('companyname')+ '</td></tr>' +
  '<tr><th>Address</th><td>' +$(this).data('customeraddress')+ '</td></tr>' +
  '<tr><th>City</th><td>' +$(this).data('city')+ '</td></tr>' +
  '<tr><th>Primary Phone</th><td>' +$(this).data('phoneone')+ '</td></tr>');


  //return false;
});

クリック機能は、alert() からの応答を取得すると機能しますが、常に未定義であり、html でもすべての変数に対して未定義と表示されます。

4

2 に答える 2

2

HTML コード内の属性はすべてdate-ではなく で始まっていdata-ます。

それを修正すれば大丈夫です。

于 2013-11-03T21:31:40.807 に答える
0
  1. .live は廃止され、.on が優先されます

  2. これを $(function() {}) でラップしましたか?

  3. そうではdata-ないdate-

  4. window.console&&console.logの代わりに使用alert

  5. イベントを渡し、Default を防止します。

このような

$(function() {
  $(".loadCustomerInfo").on('click',function(e) {
    e.preventDefault();
    var idVar=$(this).data('customerid');
    .
    .
于 2013-11-03T21:35:56.847 に答える