li
val()は、入力などのフォーム要素で使用されることになっているため使用できません。この場合、有効な属性は次のようになります。value
liの場合、データ属性を使用できます
<li id="<?php echo 'v'.$value['vehicleid'] ?>" data-vehicleid="<?php echo $value['vehicleid']; ?>" >
と使用:
var vehicleId = $(this).data('vehicleid');
複数のデータを渡す場合は、各IDを「-」のような文字で区切ることができます。
<li id="<?php echo 'v'.$value['vehicleid'] ?>" data-vehicleids="<?php echo $value['vehicleid1']. '-' .$value['vehicleid2']; ?>" >
これは次のようなものを生成するはずです:
<li id="1234" data-vehicleids="1234-3456-5678" >
その後、
var vehicleIdsArray = $(this).data('vehicleids').split('-');
分離に使用される文字が車両IDに使用されていないことを確認してください
これはあなたを助けるはずです:
<ul id="list">
<li data-vehicleid="1234" data-vehiclename="renault" data-vehicle-color="silver">Renault</li>
</ul>
$(document).ready(function(){
$('ul#list li').click(function(e){
var vehicleId = $(this).attr('vehicleid');
var vehicleName = $(this).attr('vehiclename');
var vehicleColor = $(this).attr('vehiclecolor');
return false;
});
});
Resigからの引用:
この仕様全体で最も魅力的なのは、ブラウザが何かを実装するのを待たずに使用を開始できることだと思います。今日からHTMLメタデータにデータプレフィックスを使用し始めることで、将来にわたってうまく機能し続けることを安全に知ることができます。HTML 5バリデーターが完全なW3Cバリデーターに統合される時点で、サイトはすでに準拠しています(もちろん、既に有効なHTML 5であり、HTML 5 Doctypeを使用していると仮定します)。