我尝试使用JQuery获得数据集的价值,但它返回未定义的值,我不知道原因:
<option class="option"
value="<?php echo $art["id_art"]; ?>"
data-unite="<?php echo $art["unite_lib"]; ?>"
data-qte="<?php echo $art["art_solde"]; ?>"
data-perissables="<?php echo $art["perissable"]; ?>">
<?php echo $art["lib_art"]. " périssable : ".$art["perissable"]; ?>
</option>
和JS:
var id = $(this).find("option").val()
var qte = $(`option[value=${id}]`).data("qte");
var perissable = $(`option[value=${id}]`).attr("data-perissables")
console.log(perissable);
答案 0 :(得分:0)
我测试了你的所有建议,也许我没有问我的问题 事实上,selectbox的数据来自我的数据库,对于每个值,我都试着拥有“perissable”的值。
<?php foreach($articles as $art): ?>
<?php if($art["id_type_art"] == "1"): ?>
<?php if(!in_array($art["id_art"],$tab) ): ?>
<option class="option" value="<?php echo $art["id_art"]; ?>" data-unite="<?php echo $art["unite_lib"]; ?>" data-qte="<?php echo $art["art_solde"]; ?>" data-perissables="<?php echo $art["perissable"]; ?>"><?php echo $art["lib_art"]; ?></option>
<?php $tab[]= $art["id_art"] ; ?>
<?php endif ?>
<?php endif ?>
<?php endforeach; ?>
答案 1 :(得分:0)
我测试了你的jqyery代码,在这一行:
var id = $(this).find("option").val()
结果(id)为undefined
。但我将$(this)
更改为$('body')
并且有效。在您的代码中$(this)
等于window
。将您的第一个jquery行更改为:
var id = $('body').find("option").val()
更新
如果您的代码是关于选择框更改或点击事件,您可以轻松完成此操作:
var qte = $(this).data("qte");
var perissable = $(this).attr("data-perissables")
答案 2 :(得分:0)
我看到了导致问题的原因。事实上,数据表的分页选项存在混淆。所以我继续这样做以正确地定位元素。
$("#select-articles").on("change", function(e){
var id = $(this).val()
var qte = $(`option[value=${id}]`).data("qte");
var perissable = $(this).find(`option[value=${id}]`).data("perissable");
var url = '<?php echo base_url("index.php/Articles/get_cout_date_exp/"); ?>'})