javascript - 检查是否选择了收音机不做任何事情
问题描述
我有两个单选按钮,我希望当我选择一个选项以继续使用代码但我不能,因为什么都没有出现。这是整个代码
$(function() {
$("#tratamientos").click(function() {
let valorSelect = $("#tratSelect").val();
let valor = $('input:radio:checked').val();
if (valor == 'rojo') {
if (valorSelect == 2) {
alert('Extracción indicada es una prestación requerida.')
$('#tratSelect').val('none')
}
}
});
});
if ($("#prestRequerida").is(':checked')) {
alert('ha seleccionado prestacion requerida')
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
<form id="tratamientos">
<div class="col-md-4">
Seleccione el tipo de Prest. requerida
<div class="form-inline">
<!-- <input type="radio" id="prestExistente" name="colorPrestacion" value="1"> -->
<input type="radio" id="prestExistente" name="colorPrestacion" value='rojo'>
<div class="mr-1"></div>
<font style="color:red"> Prestaciones existentes</font>
</div>
<div class="row">
<div class="col-md-12">
<input type="radio" id="prestRequerida" name="colorPrestacion" value='azul'>
<font style="color:blue"> Prestaciones requeridas</font>
</div>
</div>
</div>
<select class="col-md-4" name="" id="tratSelect">
<option value='none' selected disabled>Seleccione referencia</option>
<option value="2">Extracción requerida</option>
</select>
</form>
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js" integrity="sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js" integrity="sha384-B4gt1jrGC7Jh4AgTPSdUtOBvfO8shuf57BaghqFfPlYxofvL8/KUEfYiJOMMV+rV" crossorigin="anonymous"></script>
我尝试了不同的方法,但我不明白为什么另一种方法有效,而这不是
这是工作的人
$(function () {
$("#tratamientos").click(function () {
let valorSelect = $("#tratSelect").val();
let valor = $("input:radio:checked").val();
if (valor == "rojo") {
if (valorSelect == 2) {
alert("Extracción indicada es una prestación requerida.");
$("#tratSelect").val("none");
}
}
});
});
这些是其他的
if ($("#prestExistente").is(':checked')) {
console.log('ha seleccionado prestacion existente')
}
let val= $('input:radio[name=colorPrestacion]:checked').val()
if (val=="rojo") {
alert(' seleccion prestacion existente')
}
单选按钮的 if 条件也不必在函数中,这就是为什么我没有将它放在另一个函数中的原因
解决方案
您的最后一条if
语句也应该在click
事件处理程序中:
$(function () {
$("#tratamientos").click(function () {
let valorSelect = $("#tratSelect").val();
let valor = $('input:radio:checked').val();
if (valor == 'rojo') {
if (valorSelect == 2) {
alert('Extracción indicada es una prestación requerida.')
$('#tratSelect').val('none')
}
}
//Right here VVV
if ($("#prestRequerida").is(':checked')) {
alert('ha seleccionado prestacion requerida')
}
//Right here ...
});
});
推荐阅读
- javascript - 在不设置默认值的情况下评估变量
- java - Android 10,huawei mate30,从app跳转到APN设置页面,没有数据!
- javascript - 车轮事件触发多次反应
- java - 当从 SWT Eclipse 中的 FileDialog 中选择了不正确的文件扩展名/格式时,我将如何显示错误消息?
- html - 更改已定义网格内的 div 位置可保留原始布局
- vue.js - 该脚本具有不受支持的 MIME 类型('text/html'),用于 vue js 中的 firebase 消息传递服务集成
- python - seaborn python没有显示y标签
- pytorch - RuntimeError:张量的元素 0 不需要 grad 并且没有 grad_fn
- spring-boot - SpringBatchTest 多个测试类 - 抛出 InstanceAlreadyExistsException
- javascript - 访问 Sourcetree 中的旧分支时出错