Javascript 。当它进入if语句时,单击“不工作”
我需要验证一些输入,以便用户单击第二个链接,比如如果输入为空,不要让用户单击第二个链接。我知道它会到达函数,因为当它进入if语句时,我有一个警报,但它不会单击 我尝试使用Javascript 。当它进入if语句时,单击“不工作”,javascript,jquery,html,laravel-5,Javascript,Jquery,Html,Laravel 5,我需要验证一些输入,以便用户单击第二个链接,比如如果输入为空,不要让用户单击第二个链接。我知道它会到达函数,因为当它进入if语句时,我有一个警报,但它不会单击 我尝试使用returnfalse我尝试了$(“#crearCuestionario”)。单击()该id来自第一个链接,因此当它进入时,如果它单击第一个链接,用户就不会进入第二个链接 代码如下: function checkCampoVacio() { var titulo = $("#titulo").val();
returnfalse
我尝试了$(“#crearCuestionario”)。单击()代码>该id来自第一个链接,因此当它进入时,如果它单击第一个链接,用户就不会进入第二个链接
代码如下:
function checkCampoVacio() {
var titulo = $("#titulo").val();
var textCuestionario = $("#mansajecreator2").val();
var textCuestionario2 = $("#mensajecreator100").val();
debugger;
if(titulo == ''){
$("#titulo").css("border","1px solid red");
$("#crearCuestionario").click();
alert("Porfavor no dejes campos vacios");
}else if (textCuestionario == '') {
$("#mansajecreator2").css("border","1px solid red");
$("#crearCuestionario").click();
alert("Porfavor no dejes campos vacios");
document.getElementById("crearCuestionario").click();
} else if(textCuestionario2 == ''){
$("#mansajecreator100").css("border","1px solid red");
alert("Porfavor no dejes campos vacios");
$("#crearCuestionario").click();
}else{
savelmainf();
}
}
$("#saveMainQuest").click(function() {
checkCampoVacio();
});
以下是链接/按钮的html:
<!-- Stepper -->
<div class="steps-form-2" >
<input type="hidden" id="masteridquest" value="{{ $idcuestionario }}">
<div class="steps-row-2 setup-panel-2 d-flex justify-content-between">
<div class="steps-step-2">
<a href="#step-1" id="crearCuestionario" class="btn btn-amber btn-circle-2 waves-effect ml-0" data-toggle="tooltip" data-placement="top" title="Crear cuestionario"><span class="glyphicon glyphicon-edit"></span></a>
</div>
<div id="masteridquestb" class="steps-step-2">
<a href="#step-2" id="saveMainQuest" class="btn btn-blue-grey btn-circle-2 waves-effect" data-toggle="tooltip" data-placement="top" title="Crear preguntas"><span class="glyphicon glyphicon-comment"></span> </a>
</div>
<div id="masteridquestc" class="steps-step-2">
<a href="#step-3" id="saveMainQuest2" class="btn btn-blue-grey btn-circle-2 waves-effect" data-toggle="tooltip" data-placement="top" title="Probar cuestionarios"><span class="glyphicon glyphicon-ok-circle"></span></a>
</div>
<div id="masteridquestd" class="steps-step-2">
<a href="#step-4" class="btn btn-blue-grey btn-circle-2 waves-effect mr-0" data-toggle="tooltip" data-placement="top" title="Terminar y publicar"><span class="glyphicon glyphicon-thumbs-up" ></span></a>
</div>
</div>
</div>
我需要的是,当用户点击第二个链接时,如果输入是空的,它不会允许用户点击,也不会让用户返回他所在的位置。出于安全原因,Javascript使模拟用户点击链接变得很困难
不过,您可以通过创建jQuery绑定并根据所单击的元素启动要在其中访问的页面来实现这一点
因此,在您的中,如果选中,请更改:
$("#crearCuestionario").click();
到
然后,如果选中,则在之外的方法中捕获单击:
$("#crearCuestionario").on('click', function() {
window.location.href = $(this).attr('href');
});
再多一点代码,但这应该可以为您解决问题。您至少可以共享一个工作代码的JSFIDLE或codepen吗?我如您所说尝试过,但现在它不会出现在if语句中,也不会显示空字段的警报。这是if检查逻辑的问题。你的问题是如何让它点击,听起来这个答案对你很有用。从小事做起,让点击工作,然后围绕它建立程序逻辑(如果检查)。然后,用新代码问另一个问题。
$("#crearCuestionario").on('click', function() {
window.location.href = $(this).attr('href');
});