jQuery prop("disabled") 没有运行
jQuery prop("disabled") is not functioning
我知道这个问题已被多次询问和回答,但 none 的解决方案适用于此示例,即使我知道它们应该如此。也许其他双眼会帮助解决这个问题。
我在设置禁用的代码前后放置了警报 属性,确实设置正确,但该元素仍处于禁用状态。
我摘录了重现此问题所需的代码:jsfiddle
这里有一些代码只是为了满足 SO 规则。
$(function () {
var dbVendor = $("#database-vendor");
$("#uses-db").on("change", function (event) {
event.preventDefault();
dbVendor.prop("disabled", ($(this).val() == "Yes" ? false : true));
});
});
#database-vendor
已经被包裹,被jQuery移动了,有一个div和一堆JavaScript。更改 select 的禁用 属性 不会导致 jQuery 移动设备响应并更改其 div。
删除 jQuery Mobile 将使代码正常工作。
如果您希望它与 jQuery 移动版一起使用,那么您需要查看 jQuery 移动版 API 以了解如何启用其伪select个元素。
与其搞乱 prop("disabled"),不如做
$dbVendor.selectmenu("enable");
http://jsfiddle.net/r3977gy7/30/
文档
您正在使用 jquery 移动至极添加 "ui-disabled" class 到元素和他的 parent
$(function () {
$("#uses-db").on("change", function (event) {
event.preventDefault();
if($(this).val() == "Yes"){
$("#database-vendor").parent().removeClass("ui-disabled");
$("#database-vendor").removeClass("ui-disabled");
$("#database-vendor").removeAttr("disabled");//edited
}
else{
$("#database-vendor").parent().addClass("ui-disabled");
$("#database-vendor").addClass("ui-disabled")
$("#database-vendor").addAttr("disabled");//edited
}
});
});
实际工作代码jsffidle
请查看此解决方案
$(function () {
var dbVendor = $("#database-vendor");
$("#uses-db").on("change", function (event) {
event.preventDefault();
dbVendor.selectmenu($(this).val() === 'Yes' ? 'enable' : 'disable');
});
});
dbVendor.selectmenu(($(this).val() == "Yes" ? "enable" : "disable"))
我知道这个问题已被多次询问和回答,但 none 的解决方案适用于此示例,即使我知道它们应该如此。也许其他双眼会帮助解决这个问题。
我在设置禁用的代码前后放置了警报 属性,确实设置正确,但该元素仍处于禁用状态。
我摘录了重现此问题所需的代码:jsfiddle
这里有一些代码只是为了满足 SO 规则。
$(function () {
var dbVendor = $("#database-vendor");
$("#uses-db").on("change", function (event) {
event.preventDefault();
dbVendor.prop("disabled", ($(this).val() == "Yes" ? false : true));
});
});
#database-vendor
已经被包裹,被jQuery移动了,有一个div和一堆JavaScript。更改 select 的禁用 属性 不会导致 jQuery 移动设备响应并更改其 div。
删除 jQuery Mobile 将使代码正常工作。
如果您希望它与 jQuery 移动版一起使用,那么您需要查看 jQuery 移动版 API 以了解如何启用其伪select个元素。
与其搞乱 prop("disabled"),不如做
$dbVendor.selectmenu("enable");
http://jsfiddle.net/r3977gy7/30/
文档
您正在使用 jquery 移动至极添加 "ui-disabled" class 到元素和他的 parent
$(function () {
$("#uses-db").on("change", function (event) {
event.preventDefault();
if($(this).val() == "Yes"){
$("#database-vendor").parent().removeClass("ui-disabled");
$("#database-vendor").removeClass("ui-disabled");
$("#database-vendor").removeAttr("disabled");//edited
}
else{
$("#database-vendor").parent().addClass("ui-disabled");
$("#database-vendor").addClass("ui-disabled")
$("#database-vendor").addAttr("disabled");//edited
}
});
});
实际工作代码jsffidle
请查看此解决方案
$(function () {
var dbVendor = $("#database-vendor");
$("#uses-db").on("change", function (event) {
event.preventDefault();
dbVendor.selectmenu($(this).val() === 'Yes' ? 'enable' : 'disable');
});
});
dbVendor.selectmenu(($(this).val() == "Yes" ? "enable" : "disable"))