这是我正在查看的实际代码,jquery代码似乎不起作用。
我已经尝试了一些东西,比如js/jquery,在代码上使用不同的方法(主要是尝试使用两种语言的不同语法),但都还没有奏效。我希望当CbUsuario得到检查时,Cnpj输入被隐藏,如果需要,我可以将html输入更改为剃刀输入。
请记住,我在javascript/jquery和mvc方面也是个新手。
@model Collab.Domain.Entities.Usuario
@{
ViewBag.Title = "Registrar";
}
<div class="limiter">
<div class="container-form">
<div class="wrap-login">
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<span class="cadastro-form-title">
Cadastro
</span>
<p>@ViewBag.ErrorMessage</p>
<div class="wrap-input">
<input class="input" type="text" name="Nome">
<span class="focus-input" data-placeholder="Nome"></span>
</div>
<div class="wrap-input">
<input class="input" type="text" name="CPF">
<span class="focus-input" data-placeholder="CPF"></span>
</div>
<div class="wrap-input" id="Cnpj">
<input class="input" type="text" name="Cnpj" id="Cnpj">
<span class="focus-input" data-placeholder="CNPJ" id="Cnpj"></span>
</div>
<div class="wrap-input validate-input" data-validate="Insira um email válido">
<input class="input" type="text" name="Email">
<span class="focus-input" data-placeholder="E-mail"></span>
</div>
<div class="wrap-input validate-input" data-validate="Preencha o campo senha">
<span class="btn-show-pass">
<i class="zmdi zmdi-eye"></i>
</span>
<input class="input" type="password" name="Senha">
<span class="focus-input" data-placeholder="Senha"></span>
</div>
<span>Tipo da conta:</span>
<div>
<input type="radio" name="Cb" value="Usuario" id="CbUsuario"> Usuario<br>
<input type="radio" name="Cb" value="Pesquisador" id="CbPesquisador"> Pesquisador<br>
<input type="radio" name="Cb" value="Investidor" id="CbInvestidor"> Investidor
</div>
<div class="container-form-btn">
<div class="wrap-form-btn">
<div class="form-bgbtn"></div>
<button class="form-btn">
Cadastrar
</button>
</div>
</div>
}
</div>
</div>
@section Scripts {
@Scripts.Render("~/Scripts/jqueryval")
@Scripts.Render("~/Scripts/jquery-1.10.2.js")
@Scripts.Render("~/Scripts/jquery-1.10.2.min.js")
@Scripts.Render("~/Scripts/jquery.validate.js")
@Scripts.Render("~/Scripts/jquery.validate.min.js")
<script type="text/javascript">
$(document).ready(function () {
$("#Cb").change(function () {
var checkedradio = $('[name="Cb"]:radio:checked').val();
if (checkedradio.val() == "Usuario") {
$("#Cnpj").hide();
}
});
});
</script>
}
发布于 2018-07-07 05:00:53
您已经非常接近了,但要使其正常工作,需要进行一些调整。首先,当您正在寻找名称选择器时,您的更改事件是从ID选择器开始工作的。您已经在change回调中获得了它,所以重用它将使事件正确触发:
$("#Cb").change()
成为$("[name=Cb]:radio").change()
接下来,您将获取选中的单选按钮的值,然后尝试对该字符串值调用.val()
,这将抛出一个错误。如果您将if
块更新为只比较上一行的值检查结果,则应该是好的。更改后,它应该如下所示:
$("[name=Cb]:radio").change(function() {
var checkedValue = $('[name="Cb"]:radio:checked').val();
if (checkedValue == "Usuario") {
$("#Cnpj").hide();
} else {
$("#Cnpj").show();
}
});
我添加了一个else
块,这样选择其他单选按钮就会显示隐藏的文本框,所以在选中Usuario
单选按钮之后,它也不会永远消失。
发布于 2018-07-07 05:21:59
尝尝这个
<input type="radio" class="radio" name="Cb" value="Usuario" id="CbUsuario"> Usuario<br>
<input type="radio" class="radio" name="Cb" value="Pesquisador" id="CbPesquisador"> Pesquisador<br>
<input type="radio" class="radio" name="Cb" value="Investidor" id="CbInvestidor"> Investidor
和JQuery
$(document).ready(function () {
$(".radio").change(function () {
var checkedradio = $('[name="Cb"]:radio:checked').val();
if (checkedradio == "Usuario") {
$("#Cnpj").hide();
}
else {
$("#Cnpj").show();
}
});
});
发布于 2018-07-07 05:29:52
$(document).ready(function () {
$("input[name='Cb']").change(function(e){
if($(this).val() == 'Usuario') {
$('#Cnpj').css('visibility','hidden');
} else {
$('#Cnpj').css('visibility','visible');
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div data-cid="Cnpj" class="wrap-input" id="Cnpj">
<input class="input" type="text" name="Cnpj" id="Cnpj">
<span class="focus-input" data-placeholder="CNPJ" id="Cnpj"></span>
</div>
<div>
<input data-cid="Usuario" type="radio" name="Cb" value="Usuario" id="CbUsuario"> Usuario<br>
<input type="radio" name="Cb" value="Pesquisador" id="CbPesquisador"> Pesquisador<br>
<input type="radio" name="Cb" value="Investidor" id="CbInvestidor"> Investidor
</div>
https://stackoverflow.com/questions/51217275
复制相似问题