- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
您可以在此处查看/测试指向该页面的直接链接:Search Page Here
我有以下 JQuery:
$(函数() { $('input[type=radio]').click(function() { var r_id = $("input[@name=sc]:checked").attr('id'); //警报(r_id);
if (r_id == "bName") {
//enable By Name drop down
$(".dName").prop('disabled', false);
//disable By Specialty and By Status drop down
$(".dSpecialty").prop('disabled', true);
$(".dStatus").prop('disabled', true);
}
if (r_id == "bSpecialty") {
//enable By Specialty drop down
$(".dSpecialty").prop('disabled', false);
//disable By Name and By Status drop down
$(".dName").prop('disabled', true);
$(".dStatus").prop('disabled', true);
}
if (r_id == "bStatus") {
//enable By Status drop down
$(".dStatus").prop('disabled', false);
//disable By Name and By Specialty drop down
$(".dName").prop('disabled', true);
$(".dSpecialty").prop('disabled', true);
}
});
$('.sButton').click(function() {
var dNameVal = $(".dName").val();
var dSpecialtyVal = $(".dSpecialty").val();
var dStatusVal = $(".dStatus").val();
if ((dNameVal != "#" && $('.dName').is(':enabled')) || (dSpecialtyVal != "#" && $('.dSpecialty').is(':enabled')) || (dStatusVal != "#" && $('.dStatus').is(':enabled'))) {
//alert ("good");
$('.displayresult').css('display','block');
if ($('.dName').is(':enabled')) {
document.getElementById('first').innerHTML = phyList[$(".dName").find('option:selected').attr('id')].firstName;
document.getElementById('last').innerHTML = phyList[$(".dName").find('option:selected').attr('id')].lastName;
document.getElementById('status').innerHTML = phyList[$(".dName").find('option:selected').attr('id')].status;
document.getElementById('specialty').innerHTML = phyList[$(".dName").find('option:selected').attr('id')].specialty;
document.getElementById('address').innerHTML = phyList[$(".dName").find('option:selected').attr('id')].address;
document.getElementById('phone').innerHTML = phyList[$(".dName").find('option:selected').attr('id')].phone;
}
if ($('.dSpecialty').is(':enabled')) {
var fname = "";
var lname = "";
var stats = "";
var spec = "";
var addr = "";
var phonen = "";
for (test=0;test<=phyList.length-1;test++) {
i = phyList[test].specialty; //get all specialty in the array
//alert(i); //test alert
if (i == $(".dSpecialty").find('option:selected').attr('id')) { //if what's in the phyList array matches selection
fname = fname + phyList[test].firstName + "<br>";
lname = lname + phyList[test].lastName + "<br>";
stats = stats + phyList[test].status + "<br>";
spec = spec + phyList[test].specialty + "<br>";
addr = addr + phyList[test].address + "<br>";
phonen = phonen + phyList[test].phone + "<br>";
document.getElementById('first').innerHTML = fname;
document.getElementById('last').innerHTML = lname;
document.getElementById('status').innerHTML = stats;
document.getElementById('specialty').innerHTML = spec;
document.getElementById('address').innerHTML = addr;
document.getElementById('phone').innerHTML = phonen;
//alert ("ok");
}
}
}
if ($('.dStatus').is(':enabled')) {
var fname = "";
var lname = "";
var stats = "";
var spec = "";
var addr = "";
var phonen = "";
for (test=0;test<=phyList.length-1;test++) {
i = phyList[test].status; //get all specialty in the array
//alert(i); //test alert
if (i == $(".dStatus").find('option:selected').attr('id')) { //if what's in the phyList array matches selection
fname = fname + phyList[test].firstName + "<br>";
lname = lname + phyList[test].lastName + "<br>";
stats = stats + phyList[test].status + "<br>";
spec = spec + phyList[test].specialty + "<br>";
addr = addr + phyList[test].address + "<br>";
phonen = phonen + phyList[test].phone + "<br>";
document.getElementById('first').innerHTML = fname;
document.getElementById('last').innerHTML = lname;
document.getElementById('status').innerHTML = stats;
document.getElementById('specialty').innerHTML = spec;
document.getElementById('address').innerHTML = addr;
document.getElementById('phone').innerHTML = phonen;
//alert ("ok");
document.getElementById('errorst').innerHTML = "";
}
else {
document.getElementById('errorst').innerHTML = "<i>No match found</i>";
}
}
}
}
else {
alert ("not good");
//display the last successful result search
}
});
});
以下 HTML 代码:
<table border=0 cellPadding=10 cellSpacing=10>
<tr>
<td><input type=radio name=sc id=bName class=searchCriteria checked /> By Name:</td>
<td>
<select class="dName" name="dName">
<option SELECTED value="#" DISABLED>========================</option>
<option id="0" value="amensah">Abbey-Mensah, Michael</option>
<option id="1" value="acharya">Acharya, Niraj</option>
<option id="2" value="achonu">Achonu, Geoffrey C.</option>
<option id="3" value="agustin">Agustin, Erie</option>
<option id="4" value="agyemang">Agyemang, Kuragu</option>
<option id="5" value="jahmed">Ahmed, Jahid</option>
<option id="6" value="fahmad">Ahmad, Faqir</option>
</select>
</td>
<td><span id="errorna"></span></td>
</tr>
<tr>
<td><input type=radio name=sc id=bSpecialty class=searchCriteria /> By Specialty:</td>
<td>
<select class="dSpecialty" name="dSpecialty" DISABLED>
<option SELECTED value="#" DISABLED>========================</option>
<option id="Anesthesiology" value="Anesthesiology">Anesthesiology</option>
<option id="Cardiovascular Disease" value="Cardiovascular Disease">Cardiovascular Disease</option>
<option id="Dentistry" value="Dentistry">Dentistry</option>
<option id="Dermatology" value="Dermatology">Dermatology</option>
<option id="Emergency Medicine" value="Emergency Medicine">Emergency Medicine</option>
<option id="Family Practice" value="Family Practice">Family Practice</option>
<option id="Gastroenterology" value="Gastroenterology">Gastroenterology</option>
<option id="Geriatric Medicine" value="Geriatric Medicine">Geriatric Medicine</option>
<option id="Hematology" value="Hematology">Hematology</option>
<option id="Internal Medicine" value="Internal Medicine">Internal Medicine</option>
<option id="Interventional Cardiology" value="Interventional Cardiology">Interventional Cardiology</option>
<option id="Medicine" value="Medicine">Medicine</option>
<option id="Obstetrics" value="Obstetrics">Obstetrics</option>
<option id="Oral & Maxillofacial Surgery" value="Oral & Maxillofacial Surgery">Oral & Maxillofacial Surgery</option>
<option id="Orthopedic Surgery" value="Orthopedic Surgery">Orthopedic Surgery</option>
<option id="Otolaryngology" value="Otolaryngology">Otolaryngology</option>
<option id="Pathology" value="Pathology">Pathology</option>
<option id="Pediatrics" value="Pediatrics">Pediatrics</option>
<option id="Physical Medicine & Rehab" value="Physical Medicine & Rehab">Physical Medicine & Rehab</option>
<option id="Plastic Surgery" value="Plastic Surgery">Plastic Surgery</option>
<option id="Podiatry" value="Podiatry">Podiatry</option>
<option id="Psychiatry" value="Psychiatry">Psychiatry</option>
<option id="Psychotherapy" value="Psychotherapy">Psychotherapy</option>
<option id="Pulmonary Medicine" value="Pulmonary Medicine">Pulmonary Medicine</option>
<option id="Rad. Nuclear Medicine" value="Rad. Nuclear Medicine">Rad. Nuclear Medicine</option>
<option id="Radiology" value="Radiology">Radiology</option>
<option id="Surgery" value="Surgery">Surgery</option>
<option id="Urology" value="Urology">Urology</option>
<option id="Vascular" value="Vascular">Vascular</option>
</select>
</td>
<td><span id="errorsp"></span></td>
</tr>
<tr>
<td><input type=radio name=sc id=bStatus class=searchCriteria /> By Status:</td>
<td>
<select class="dStatus" name="dStatus" DISABLED>
<option SELECTED value="#" DISABLED>========================</option>
<option id="Active" value="active">Active</option>
<option id="Allied Health Staff" value="allied">Allied Health Staff</option>
<option id="Consulting" value="consulting">Consulting</option>
<option id="Courtesy" value="courtesy">Courtesy</option>
<option id="Leave of Absence" value="loa">Leave of Absence</option>
<option id="Primary Provider" value="primary">Primary Provider</option>
<option id="Provisional" value="provisional">Provisional</option>
</select>
</td>
<td><span id="errorst"></span></td>
</tr>
<tr>
<td colSpan=2 align=right><input type=button value="Search" class="sButton" name="sButton" /></td>
</tr>
</table>
<div class=displayresult>
<table border=0 cellPadding=0 cellSpacing=0 width=100%>
<tr>
<td>First Name</td>
<td>Last Name</td>
<td>Status</td>
<td>Specialty</td>
<td>Address</td>
<td>Phone Number</td>
</tr>
<tr>
<td class="first" id="first" name="first"></td>
<td class="last" id="last" name="last"></td>
<td class="status" id="status" name="status"></td>
<td class="specialty" id="specialty" name="specialty"></td>
<td class="address" id="address" name="address"></td>
<td class="phone" id="phone" name="phone"></td>
</tr>
</table>
</div>
以下 CSS 代码:
.displayresult {
display: none;
}
现在如果你检查 JS 代码,下面的 Doctor 有多个专业:
...
{
"firstName": "Ahmad",
"lastName": "Faqir",
"status": "Provisional",
"specialty": ["Internal Medicine", "Pediatrics"],
"address": "test test, Brooklyn NY 11218",
"phone": "456.673.4389"
}
...
当用户选择“内科”或“儿科”作为专业时,如何更改 JQuery 函数以确保他出现在两个选项中?
此外,以下 JS 不工作:
...
if (i == $(".dStatus").find('option:selected').attr('id')) { //if what's in the phyList array matches selection
fname = fname + phyList[test].firstName + "<br>";
lname = lname + phyList[test].lastName + "<br>";
stats = stats + phyList[test].status + "<br>";
spec = spec + phyList[test].specialty + "<br>";
addr = addr + phyList[test].address + "<br>";
phonen = phonen + phyList[test].phone + "<br>";
document.getElementById('first').innerHTML = fname;
document.getElementById('last').innerHTML = lname;
document.getElementById('status').innerHTML = stats;
document.getElementById('specialty').innerHTML = spec;
document.getElementById('address').innerHTML = addr;
document.getElementById('phone').innerHTML = phonen;
//alert ("ok");
document.getElementById('errorst').innerHTML = "";
}
else {
document.getElementById('errorst').innerHTML = "<i>No match found</i>";
}
}
...
无论是否找到匹配项,它始终显示未找到匹配项消息。
如何才能让它只在找不到匹配项时显示消息?
最佳答案
您可能遇到问题的原因是您从未声明 i。你的 for 循环应该像这样开始:
for (test=0;test<=phyList.length-1;test++) {
var i = phyList[test].specialty; //get all specialty in the array
如果有多个专业,这将为您提供一个数组,因此您应该使用第二个 for 循环来遍历您的专业。
for ( var iVar; iVar < i.length; iVar++ )
{
if (i[iVar] == $(".dStatus").find('option:selected').attr('id')) { //if what's in the phyList array matches selection
//code
}
}
这应该检查每个医生的所有专业。
由于并非所有专业都作为数组添加,因此您需要在 for 循环之外包含原始 if 语句。这是一个有效的 jQuery:http://jsfiddle.net/k7jhq/
关于jquery - 在 JQuery 中的数组中搜索数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16303231/
在带有 jQuery 的 CoffeeScript 中,以下语句有什么区别吗? jQuery ($) -> jQuery -> $ - > 最佳答案 第一个与其他两个不同,就像在纯 JavaScr
已关闭。这个问题是 off-topic 。目前不接受答案。 想要改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 已关闭13 年前。 Improve th
就目前情况而言,这个问题不太适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或扩展讨论。如果您觉得这个问题可以改进并可能重新开放,visit
这个问题可能听起来很愚蠢,但请耐心等待,因为我完全是初学者。我下载了两个 jQuery 版本,开发版本和生产版本。我想知道作为学习 jQuery 的初学者,什么更适合我。 最佳答案 如果您对 jQue
The documentation说要使用 1.6.4,但我们现在已经升级到 1.7.2。 我可以在 jQuery Mobile 中使用最新版本的 jQuery 吗? 最佳答案 您当然可以,但如果您想
我在这里看到这个不错的 jquery 插件:prettyphoto jquery lightbox有没有办法只用一个简单的jquery来实现这样的效果。 我只需要弹出和内联内容。你的回复有很大帮助。
很明显我正在尝试做一些 jQuery 不喜欢的事情。 我正在使用 javascript 上传图片。每次上传图片时,我都希望它可见,并附加一个有效的删除脚本。显示工作正常,删除则不然,因为当我用 fir
这两个哪个是正确的? jQuery('someclass').click(function() { alert("I've been clicked!"); }); 或 jQuery('somec
我正在寻找一个具有以下格式的插件 if (jQuery)(function ($) { -- plugin code -- })(jQuery); 我明白 (function ($)
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 已关闭10 年前。 Improv
我知道这个问题已经被问过几次了,但想知道您是否可以帮助我解决这个问题。 背景:我尝试创建一个使用 Ajax 提交的表单(jQuery 表单提交)。我已经工作得很好,然后我想在表单上得到验证。我可以使用
我正在使用无处不在的jquery validate plugin用于表单验证。它支持使用metadata plugin用于向表单元素添加验证规则。 我正在使用此功能。当验证查找这些规则时,它会对元素进
我更喜欢为我一直在开发的网络社区添加实用的视觉效果,但随着事情开始堆积,我担心加载时间。 拥有用户真的更快吗加载(希望是缓存的)副本来自 Google 存储库的 jquery? 是否使用 jQuery
这个问题已经有答案了: Slide right to left? (17 个回答) 已关闭 9 年前。 你能告诉我有没有办法在 jQuery 中左右滑动而不使用 jQuery UI 和 jQuery
我如何找出最适合某种情况的方法?任何人都可以提供一些示例来了解功能和性能方面的差异吗? 最佳答案 XMLHttpRequest 是原始浏览器对象,jQuery 将其包装成一种更有用和简化的形式以及跨浏
运行时 php bin/console oro:assets:build ,我有 11 个这样的错误: ERROR in ../node_modules/jquery-form/src/jquery.
我试图找到 jQuery.ajax() 在源代码中的定义位置。但是,使用 grep 似乎不起作用。 在哪里? 谢谢。 > grep jQuery.ajax src/* src/ajax.js:// B
$.fn.sortByDepth = function() { var ar = []; var result = $([]); $(this).each(function()
我的页面上有多个图像。为了检测损坏的图像,我使用了在 SO 上找到的这个。 $('.imgRot').one('error',function(){ $(this).attr('src','b
我在理解 $ 符号作为 jQuery 函数的别名时遇到了一些麻烦,尤其是在插件中。你能解释一下 jQuery 如何实现这种别名:它如何定义 '$' 作为 jQuery 函数的别名?这是第一个问题。 其
我是一名优秀的程序员,十分优秀!