【问题标题】:Jquery: Trying to disable HTML select menu not workingJquery:尝试禁用 HTML 选择菜单不起作用
【发布时间】:2016-07-31 00:00:28
【问题描述】:

在我的 HTML 页面上,我有一些选择菜单,它们都共享类名 .iconDropDownMenu,当使用 PHP 生成页面时,一些选择菜单将被 PHP 添加另一个类隐藏到选择菜单中。

无论如何,我想只禁用隐藏的.iconDropDownMenu,我一直在尝试使用以下内容:

$(".iconDropDownMenu:hidden").each(function()
{
    $(this).prop('disabled', true);
});

这运行没有错误,但禁用属性没有显示在我的选择菜单上,因此不会禁用输入。所以我做了一些研究,发现我可以在第一行之后在上面的 .each() 中使用$(this).multiselect('refresh');。但是我得到一个错误 TypeError: $(...).multiselect is not a function 这是它实际工作的奇怪部分,我可以在 HTML 中看到 disabled 属性,但错误会停止其余的 JavaScript 运行...

我也尝试使用$(this).selectmenu("refresh");,但得到以下信息:错误:在初始化之前无法调用选择菜单上的方法;尝试调用方法“刷新”,这也产生了相同的结果,因为禁用属性被添加到选择菜单,而没有它之前没有。

我尝试初始化选择菜单,但它只是在 HTML 中添加了一个跨度,并通过将第一个选择显示为选择菜单之外的文本来搞乱选择菜单?

我还尝试使用 PHP 将“禁用”属性输出到选择菜单 HTML,但在浏览器中加载时它不显示并被删除:/

任何帮助,谢谢!

【问题讨论】:

  • 请问,您所说的 将被 PHP 隐藏 是什么意思? 但 disabled 属性没有显示在我的选择菜单上 ?
  • 尝试使用attr() 而不是prop
  • 请分享HTML代码以方便调试
  • 我的意思是我基​​本上已经使用 PHP 在选择 HTML 中回显“禁用”但在浏览器中它没有显示,但如果我要回显它会显示的“disabledA”。你知道当你按 F12 查看代码时。
  • 听起来你的 JS 可能需要进入$(document).ready();,这里有一个例子……jsfiddle.net/kennethcss/vkuhm93s。如果没有更多细节,很难给出更具体的答案。

标签: javascript jquery html jquery-ui-selectmenu


【解决方案1】:

听起来你的 JS 可能需要进入 $(document).ready();,这里有一个例子……https://jsfiddle.net/kennethcss/vkuhm93s/

【讨论】:

    猜你喜欢
    • 2012-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多