jquery UI Multiselect Widget

时间:2013-05-07 20:19:42

标签: jquery html jquery-ui drop-down-menu widget

我一直在弄乱这个小部件(http://www.erichynds.com/examples/jquery-ui-multiselect-widget/demos/basic.htm)几个小时但没有任何进展。我需要下拉菜单功能,如上面链接中的第二个示例。截至目前,下拉列表已打开,当我点击复选框时,它会自动关闭。我可以使用键盘访问下拉列表的字段,按Enter键将选择所需的选项。但是,当我去鼠标点击该选项时,整个下拉列表隐藏起来。此外,下拉列表落后于其下方的其他联系表格。我试过z-index没有运气。提前谢谢你们,这让我发疯了。以下是我的代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>#attributes.title#</title>
<META NAME="TITLE" CONTENT="#attributes.title#"/>
<META NAME="keywords" content="#attributes.keywords#" />
<META NAME="description" content="#attributes.description#" />
<script type="text/javascript" src="../ddcl/jquery-1.6.1.min.js"></script>
<link rel="stylesheet" type="text/css" href="/jQuery/Fancy/style.css" />
<link rel="stylesheet" type="text/css" href="/jQuery/Fancy/jquery.fancybox-1.3.1.css">
<link rel="stylesheet" href="/Themes/PrintCenter/style.css" />
<link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/ui-lightness/jquery-ui.css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js"></script>
<script type="text/javascript" src="../ddcl/jquery.multiselect.js"></script>
<cfinclude template="/Includes/header_head.cfm">
 </head>

和HTML

<cfform action="/Task/Form/ProcessForm.cfm" id="print-request-form" method="post"     name="printrequestform"> 
 <span>Select Print Material</span>
  <select name="example-optgroup" multiple="multiple" size="5" id="dropdowns">
<optgroup label="Tri-Fold Brochure">
    <option value="option1">500 units</option>
    <option value="option2">1000 units</option>
    <option value="option3">1500 units</option>
</optgroup>
<optgroup label="Group Two">
    <option value="option4">500 units</option>
    <option value="option5">1000 units</option>
    <option value="option6">1500 units</option>
    <option value="option7">2000 units</option>
</optgroup>
</select><label><span>Full Name:</span> <cfinput class="input-text" maxlength="100" message="Please enter a valid name." name="name" required="yes" size="30" type="text" validate="maxlength"></cfinput></label></cfform>

脚本

<script type="text/javascript">
$("#dropdowns").multiselect({
selectedList: 2 // 0-based index
});</script>

2 个答案:

答案 0 :(得分:0)

尝试以下代码。我已经创建了一个示例Fiddle供您查看它的实际效果。

相当多的页面html代码没有直接连接渲染Multiselect JQuery选择器的Grouped顺序的问题,所以我把它从以下代码中删除了:

<script type="text/javascript">
  $(function(){
     $("select").multiselect();
  });
</script>

<cfform action="/Task/Form/ProcessForm.cfm" id="print-request-form" method="post"     name="printrequestform">
    <h1>Optgroups Example</h1>
    <h3>ehynds / jquery-ui-multiselect-widget</h3>   
 <span>Select Print Material</span>
  <select name="example-optgroup" multiple="multiple" size="5" id="dropdowns">
<optgroup label="Tri-Fold Brochure">
    <option value="option1">500 units</option>
    <option value="option2">1000 units</option>
    <option value="option3">1500 units</option>
</optgroup>
<optgroup label="Group Two">
    <option value="option4">500 units</option>
    <option value="option5">1000 units</option>
    <option value="option6">1500 units</option>
    <option value="option7">2000 units</option>
</optgroup>
</select><label><span>Full Name:</span> <cfinput class="input-text" maxlength="100" message="Please enter a valid name." name="name" required="yes" size="30" type="text" validate="maxlength"></cfinput></label></cfform>

我希望这有助于解决您的问题和其他有类似问题的人。

答案 1 :(得分:0)

检查您的元素名称,当它说多个时,它必须是一个数组。

<select name="my_options[]" multiple class="multiselect">