繁体   English   中英

Jquery 单选按钮值不变

[英]Jquery Radio button value not changing

需要一些帮助,我搜索了谷歌并没有运气。

我正在尝试更新 div class“size-number”中的单选按钮值。 我想在下面的 ajax 请求中使用该值。 当我检查元素时,单选按钮具有可用按钮的更新值,但是当我将它控制台记录到 jquery 时,它给了我相同的初始值,尽管我选择了它。 我尝试将单选按钮设置为已检查 =“已检查”。 我也相信这是默认值的问题。 我还尝试了 jquery 中的输入验证。 此外,我还尝试在 jquery 中引用输入 ("input[name='radiobten']:checked")。 任何建议将不胜感激!

 $(".size-number").click(function(){ var modelid = $("#modelval").attr('value'); console.log(modelid); $.ajax({ url: '"Example API"', data: [], dataType: 'json', type: "GET", success: function(res){ var newarr = (res).filter(function(indx){ return indx.model_cat_id == modelid }); console.log(newarr) $('modelselect').slideToggle(200).html(res); }}); });
 <?php foreach ($brands as $brand){?> <div class="search-select"> <i class="fas fa-chevron-down"></i> <a href="/<?php echo $brand->full_slug.$urlSize; ?>"> <?php echo $brand->name; ?></a> </div> <?php $slugCurrent = $brand->slug; foreach ($models as $model){ if($model->brand_id == $brand->id){ if(is_null($model->model_cat_id)){?> <div class="size-number" style="display: none;"> <a href="/<?php echo $brand->slug; ?>/<?php echo $model->slug_full.$urlSize; ?>" style="color: blue;"><?php echo $model->name; ?><input type="radio" id="modelval" name="radiobten" value="<?php echo $model->id?>"/></a> </div> <?php } } } }?>

您不能有多个具有相同 id 的元素,即: modelval 无论您选择哪个按钮,这将始终为您提供第一个单选按钮的值。而不是使用class来获取单选按钮的值。因此,您可以使用 div 的 onclick $(this).find("yourclassname").attr('value')仅获取该特定按钮的值。

演示代码

 $(".size-number").click(function() { //div->find closest modelval->value var modelid = $(this).find(".modelval").attr('value'); console.log(modelid); $.ajax({ url: '"Example API"', data: [], dataType: 'json', type: "GET", success: function(res) { var newarr = (res).filter(function(indx) { return indx.model_cat_id == modelid }); console.log(newarr) $('modelselect').slideToggle(200).html(res); } }); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="size-number" > <a href="/<?php echo $brand->slug; ?>/<?php echo $model->slug_full.$urlSize; ?>" style="color: blue;">Abc<input type="radio" class="modelval" name="radiobten" value="1"/></a> </div> <div class="size-number" > <a href="/<?php echo $brand->slug; ?>/<?php echo $model->slug_full.$urlSize; ?>" style="color: blue;">Xyz<input type="radio" class="modelval" name="radiobten" value="2"/></a> </div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM