- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在扩展一个网页,让用户选择一个类型(对应于部门、部门、位置等引用表),因此现有代码生成 HTML,呈现所选类型的记录表以供编辑:名称、描述的文本框,状态的单选下拉列表,更新按钮。新类型需要一个多选下拉列表,并选择当前值。 bootstrap multiselect 渲染得很好——我在包含它们的记录上看到了当前值,而其他的则为“未选择”。当我单击下拉菜单时,它与 Bootstrap 面板上的所有其他输入/选择/按钮一起被禁用。
这是CSS:
<link href="/Content/jquery-ui.css" rel="stylesheet">
<link href="/Content/jquery-ui-timepicker-addon.css" rel="stylesheet">
<link href="/Content/bootstrap.css" rel="stylesheet">
<link href="/Content/site.css" rel="stylesheet">
<link href="/Content/bootstrap-multiselect.css" rel="stylesheet">
<link href="/Content/Datatables/datatables.bootstrap.css" rel="stylesheet">
<link href="/Content/Datatables/fixedHeader.bootstrap.css" rel="stylesheet">
<link href="/Content/Datatables/responsive.bootstrap.css" rel="stylesheet">
<link href="/Content/Datatables/select.bootstrap.css" rel="stylesheet">
这是脚本:
<script src="/Scripts/jquery-2.2.3.js"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="/Scripts/bootstrap.js"></script>
<script src="/Scripts/bootstrap-filestyle.js"></script>
<script src="/Scripts/respond.js"></script>
<script src="/Scripts/bootstrap-multiselect.js"></script>
<script src="/Scripts/bootstrap-multiselect-collapsible-groups.js"></script>
<script src="/Scripts/jquery-validate.js"></script>
<script src="/Scripts/jquery-validate-unobtrusive.js"></script>
<script src="/Scripts/jquery-ui-1.11.4.js"></script>
<script src="/Scripts/jquery-ui-timepicker-addon.js"></script>
<script src="/Scripts/DataTables/jquery.datatables.js"></script>
<script src="/Scripts/DataTables/datatables.bootstrap.js"></script>
<script src="/Scripts/DataTables/datatables.fixedHeader.js"></script>
<script src="/Scripts/DataTables/datatables.responsive.js"></script>
<script src="/Scripts/DataTables/datatables.select.js"></script>
这里是我生成包含要更新的记录的 HTML 表格的地方:
var siteRoot = '@Url.Content("~/")';
/* functionality and field are selected from dropdowns on the page; they identify which type (i.e. reference table) to update.
field 'baseline' is the one that needs a multiselect.
*/
var populateTable = function (functionality, field) {
$("#dataGridPanel table tbody").html("");
getDataValues(functionality, field)
.success(function (data) {
if (data != null) {
createTableForFieldType($("#dataGridPanel table"), functionality, field, data);
}
});
}
var getDataValues = function (functionality, fieldName) {
return $.ajax({
contentType: "application/json; charset=utf-8",
dataType: "json",
type: "POST",
url: siteRoot + "DataManagement/GetEntityValues",
data: JSON.stringify({
"functionality": functionality,
"fieldName": fieldName
})
});
};
var createTableForFieldType = function (table, functionality, fieldName, rowData) {
table = $(table);
table.html("");
table.append($(document.createElement("thead")).append(createTableHeaderRow(fieldName)));
table.append($(document.createElement("tbody")));
switch (fieldName) {
case "baseline":
getDataValues(functionality, "operatingsystem").success(function (dependencyData) {
for (var i = 0; i < rowData.length; i++) {
$("tbody", table).append(createTableUpdateRow(functionality, fieldName, rowData[i]));
}
/* load all Baseline OS dropdowns with all OS values */
var dropdowns = $("select.operatingsystem");
for (var i = 0; i < dependencyData.length; i++) {
var option = $(document.createElement("option")).val(dependencyData[i].Id).text(dependencyData[i].Name);
dropdowns.append(option);
}
dropdowns.each(function () {
$(this).multiselect();
});
/* select the current value(s), stored in an attribute of each select as a comma-separated string of OSIds, in createTableUpdateRow */
dropdowns.each(function () {
var OSIds = $(this).attr("osids");
if (OSIds.length > 0)
{
var OSIdArray = OSIds.split(",");
$(this).multiselect("select", OSIdArray);
}
$(this).multiselect("refresh");
});
});
break;
default:
table.append(createTableAddRow(fieldName));
for (var k = 0; k < rowData.length; k++) {
$("tbody", table).append(createTableUpdateRow(functionality, fieldName, rowData[k]));
}
break;
}
};
删除了不相关代码的 createTableUpdateRow 函数(多选下拉列表是操作系统 ID/名称列表):
var createTableHeaderRow = function (fieldName) {
var row = $(document.createElement("tr"));
var headerNames = [];
switch (fieldName) {
case "baseline":
headerNames = ["Name", "Status", "Description", "SourceId", "OS", "Last Modified By", "Last Modified Date"];
break;
}
for (var i = 0; i < headerNames.length; i++) {
row.append($(document.createElement("td")).text(headerNames[i]));
}
return row;
};
var createTableUpdateRow = function (functionality, fieldName, rowData) {
var row = $(document.createElement("tr")).attr("data-forid", rowData.Id || rowData.UniqueId);
var cellContents = [];
var lastModifiedDate = rowData.LastModifiedDate == null ? null : new Date(parseInt(rowData.LastModifiedDate.substr(6)));
var dateFormatted = (lastModifiedDate != null ? lastModifiedDate.toDateString() : "");
var statusSelect = "<select class=\"form-control status\">" +
"<option value=\"\"" + (rowData.Status == null ? " selected=\"selected\"" : "") + ">--Select a Status--</option>" +
"<option value=\"1\"" + (rowData.Status === 1 ? " selected=\"selected\"" : "") + ">Active</option>" +
"<option value=\"0\"" + (rowData.Status === 0 ? " selected=\"selected\"" : "") + ">Inactive</option>" +
"</select>";
var dependentSelect = $(document.createElement("select")).addClass("form-control");
switch (fieldName) {
case "baseline":
/* attr("osids") has the current comma-separated OSId values */
var multiSelect = $(document.createElement("select")).addClass("operatingsystem").attr("multiple", "multiple").attr("osids", rowData.OSIds == null ? "" : rowData.OSIds);
/* multiSelect.append("<option value=\"\"" + (rowData.Id == null ? " selected=\"selected\"" : "") + ">--Select an OS--</option>"); */
cellContents = [
rowData.Name,
statusSelect,
rowData.Description,
rowData.SourceId,
multiSelect,
rowData.LastModifiedByUserId,
dateFormatted,
$(document.createElement("button")).attr("data-action", "update").attr("data-forid", rowData.Id).attr("type", "button").addClass("btn btn-primary").html("Update")
];
break;
default:
break;
}
for (var i = 0; i < cellContents.length; i++) {
row.append($(document.createElement("td")).append(cellContents[i]));
}
return row;
};
最佳答案
解决了。在代码的其他地方,面板中所有按钮元素的单击事件正在检查数据值。有问题的按钮是添加和更新按钮(即数据值“添加”或“更新”)。引入多选添加了另一个按钮元素。我添加了一些代码以使该事件处理程序忽略多选按钮,现在一切正常。
关于javascript - Bootstrap 多选 : clicking on dropdown disables all input and button elements on panel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46976884/
我使用 jQuery 禁用选择下拉列表中的选项。我需要知道使用之间的区别 prop('disabled','disabled') 和 prop('disabled',true) 两者几乎都适用于所有浏
.attr('disabled', 'disabled') 和 .attr('disabled', true) 在我的代码中都有效,但我只是想知道:两者中哪一个更有效和/或哪一个更常用?真的有区别吗?
我的 asp.net mvc View 中有以下脚本:- function disableform(id) { $('#' + id).prop("disabled", true); } 但是
我已经在 Oracle VM Ware 中为我的 ubuntu 可信操作系统安装了 visual studio 代码和依赖项。我用这些命令运行代码。 ssh -X myserver code 但是当我
我有这个函数可以切换输入字段的禁用属性: $('.someElement').click(function(){ if (someCondition) { console.log
自从前几天我升级了 angularjs 后,我一直收到警告。每当我打开 ui.bootstrap 模式时,它都会发生。 这是我在 chrome-beta 44 中收到的警告: angular.js:1
我想限制用户在单击特定按钮时在文本框中输入值,否则设置禁用 false。如果我设置 $("#txtquery").attr("disabled","disabled"); 它将文本框设置为空白。如果切
How do I make a Spinner's "disabled" state look disabled? 可能重复. 我尝试了帖子中提到的解决方案,即 ((Spinner) spinner)
这段代码: $tds = $(this).closest('tr').find(td input,select); $tds.attr('disabled','disabled'); 使我的表格行不
使用 jQM 1.4.0我试图覆盖灰色样式(): input[type="text"]:disabled { opacity: 1.0 !important; color: black
不知道为什么这不起作用。 当人们单击我的应用程序的“编辑”按钮时,禁用的文本字段将变为可编辑: $("#bewerken").click(function(e) { $("input[d
我对以下差异有些困惑: swiftlint:disable:next swiftlint:disable:this 最佳答案 它们都用于禁用单行的快速规则。您还可以为单行启用规则。来自 SwiftLi
我看到一些代码 # pylint: disable=W0123 还有一些 # pylint: disable-msg=W0123 它们只是同义词吗? 最佳答案 从 pylint 0.21.0 开始不推
默认情况下,在桌面上,flutter 中的 btns 在禁用时会更改鼠标光标: 我们想禁用此行为,或替换为不同的光标。 最佳答案 要覆盖 ElevatedButton、TextButton 或 Out
我一直在学习很多关于标准 asp.net 验证器的知识,我的最新发现是关于如何禁用验证器客户端,这非常酷。 现在,如果我的初始帖子启用了验证器,但在客户端,我禁用它,服务器端是否识别客户端更改并保留它
默认情况下,在桌面上,flutter 中的 btns 在禁用时会更改鼠标光标: 我们想禁用此行为,或替换为不同的光标。 最佳答案 要覆盖 ElevatedButton、TextButton 或 Out
这个问题在这里已经有了答案: Should I use CSS :disabled pseudo-class or [disabled] attribute selector or is it a
我有一个 python 脚本,它发送包含文本、html 和 ics 附件的多部分电子邮件。这个想法是,现代电子邮件客户端将呈现 HTML 部分并提供将事件添加到用户日历中的功能。 代码如下: impo
我有一个最初被禁用的按钮: Lorem ipsum 对于此按钮,button.getAttribute('disabled') 返回 "disabled"。但是,当我使用 JavaScript 启用此
在我的一些测试中,我必须确认在设置某些标志时某些 select2 下拉菜单被禁用。为了证实这一点,我发现以下策略似乎有效: Assert.True(element.GetAttribute("disa
我是一名优秀的程序员,十分优秀!