【发布时间】:2019-05-20 20:57:59
【问题描述】:
我创建了一个页面,要求用户通过插入姓名、地址或电话号码来进行搜索查询,它们对应于三个导航选项卡(“姓名”、“地址”和“号码”),每个其中与输入文本表单和“搜索”按钮相关联。
我现在要做的是在用户点击“搜索”按钮而没有填写相应字段时显示错误日志。例如,如果用户在“姓名”选项卡上并单击“搜索”按钮,则会显示“请插入姓名”的错误消息。
我在 html 文件的 <p> 标记中包含错误消息,并且我想使用 JQuery .show() 和 .hide() 方法仅在以下两个条件同时发生时显示此类消息:
1) 该字段为空;
2) 按钮被点击。
否则,消息将被隐藏。
这是我的 Javascript sn-p,它不适合我的目的:
function validateName(){
if($("#inlineFormInputName").val()==""){
$("#searchNome").on('click', $("#errorLog").show());
}
}
function validateAddress(){
if($("#inlineFormInputAddress").val()==""){
$("#searchAddress").on('click', $("#errorLog").show());
}
}
function validatePhone(){
if($("#inlineFormInputTelefono").val()==""){
$("#searchPhone").on('click', $("#errorLog").show());
}
}
function main(){
$("#searchNome").on('click', validateName);
$("#searchAddress").on('click', validateAddress);
$("#searchPhone").on('click', validatePhone);
}
$(main());
#ID分别对应:
inlineFormInputName = 输入表单的 id - 第一个 Tab;
searchName = 按钮 ID - 第一个选项卡;
errorLog = 包含错误消息的
<p>的 IDinlineFormInputAddress = 2ndTab对应的输入表单的id;
searchAddress = 按钮 ID - 第二个选项卡;
inlineFormInputTelefono = 第三个Tab对应的输入表单的id;
searchPhone = 按钮 ID - 第三个选项卡。
我上传网页的画面:
如何使用 JQuery .show() 和 .hide() 方法仅在满足两个条件时显示错误消息?
【问题讨论】:
-
回调应该是函数定义/引用。
$(...).show()不是函数定义。这是一个函数执行。 -
副本用于超时,但超时和事件绑定都使用回调。那里和这里都存在同样的错误。
标签: javascript jquery hide show bootstrap-tabs