填充多选放置dwon
Populate Multi Select drop dwon
我有一个在CEWP中使用的SharePoint jquery表单,表单上的一个元素是Multi-Selecion元素,这是一个允许多项选择的下拉列表。例如:
<select name="cars" multiple>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="opel">Opel</option>
<option value="audi">Audi</option>
</select>
需要使用SharePoint列表中的数据预先选择元素。我有一个专栏叫汽车,数据是逗号限制(例如:萨博,奥迪)。
那么,使用spservices和jquery,我如何预选带有"萨博"answers"奥迪"的元素?以下是我在jsFiddle中的内容:http://jsfiddle.net/rXGmc/然后我需要将其应用于sharepoint。感谢您提供的任何帮助或见解。
你的fiddle没有工作,因为你没有包括jQuery(在左边的Frameworks&Extensions选项中),也因为你的选择器有一些问题:
'select[name="cars"] option[value="saab"], select[name="Volvo"] option[value="audi"],option[value="benz"],'
// incorrect name here ----^^^^^ and a trailing comma ----------------^
选择器的第一部分:
select[name="cars"] option[value="saab"]
实际上会选择"saab"选项,但第二部分:
, select[name="Volvo"] option[value="audi"]
正在尝试选择一个选项元素,该元素是具有name="Volvo"
的select元素的子元素,并且没有具有该名称的select。第三部分:
, option[value="benz"],
正在尝试选择带有"benz"的选项,而不管它可能属于哪个选择元素。
但是整个选择器不起作用,因为它有一个尾随逗号。
因此,解决这些问题,它将在"萨博"answers"奥迪"上发挥作用:
'select[name="cars"] option[value="saab"], select[name="cars"] option[value="audi"]'
演示:http://jsfiddle.net/rXGmc/2/
话虽如此,一个更简洁的选择是使用.find()
或.children()
:
$('select[name="cars"]').children('[value="saab"],[value="audi"]')
.attr('selected', 'selected');
演示:http://jsfiddle.net/rXGmc/4/
所以如果我做得好,对于萨博,奥迪的输出应该是这样的:
<select name="cars" id="cars" multiple>
<option value="volvo">Volvo</option>
<option value="saab" selected="selected">Saab</option>
<option value="opel">Opel</option>
<option value="audi" selected="selected">Audi</option>
</select>
这不能在服务器端完成吗?
如果你想在客户端做这件事,我不确定SharePoint返回的数据类型,假设"萨博,奥迪"是一个字符串,你可以在JavaScript中做这样的事情:
<script>
str = "Saab,Audi";
sel = str.split(",");
// Note I have added id="cars" in the HTML
options = document.getElementById("cars").getElementsByTagName("option");
for(var i in options)
for(var j in sel)
if(options[i].innerHTML == sel[j])
options[i].selected="selected";
</script>
- 如何设置html元素填充的动画
- 如何使用jquery在填充自动完成的值后使文本框只读
- 如何通过ajax刷新JSF填充的javascript变量
- 用与线条相同的颜色填充多折线图上的点
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- 带有填充属性的SVG矩形显示在包含元素的上方插入框阴影
- 用我的json数据填充JQuery DataTable
- 使用 jQuery 检查所有值是否为空或已填充
- 为什么不't我的变量在我的控制器中填充后在我的视图中呈现
- 如何让typeahead在我的搜索栏中填充自定义参数
- 如何使用JSON字符串中的jQuery填充下拉框
- 动态填充两个下拉菜单
- 如何将CSS(特别是填充/边距)应用于select下拉菜单的选项或optgroup
- spine.js在启动时填充模型实例
- 如何将要单独填充的每个HTML画布路径/形状分开
- CSS赢得't填充视图端口
- 从JSON填充列表(而不是HTML)
- Fabric.js-更改矩形填充
- 使用JSON文件中的变量(字符串)填充文本区域
- 填充多选放置dwon