我在一个表单中有两个 HTML 选择。第一个被调用available
并包含几个选项:
<select name="sortedby" multiple="multiple">
<option value="start">
<xsl:if test="@sortedby='start'">
<xsl:attribute name="selected">true</xsl:attribute>
</xsl:if>
Start time
</option>
<option value="thread_id">
<xsl:if test="@sortedby='thread_id'">
<xsl:attribute name="selected">true</xsl:attribute>
</xsl:if>
Thread Id
</option>
<option value="user_name">
<xsl:if test="@sortedby='user_name'">
<xsl:attribute name="selected">true</xsl:attribute>
</xsl:if>
Username
</option>
</select>
第二个被调用yourselection
并且一开始是空的:
<select name="sortedby_target" multiple="multiple">
</select>
有一个按钮可以从 中删除选定的选项available
并将它们移动到yourselection
。
此按钮从我可以使用但无法修改的库中调用 JavaScript 函数。
基本上它工作正常。但是有一个小不便:当用户将一个或多个选项从 移动available
到yourselection
时,默认情况下“到达时”不会选择它们。所以目前用户必须先选择一个选项而available
不是将其移动到yourselection
,然后再次手动选择它yourselection
,然后提交表单。
我想要的是所有到达的东西都yourselection
应该默认标记为选中。有任何想法吗?
更新!我有一个可以选择所有元素的功能:
function selectAllOptions(obj) {
if (!hasOptions(obj)) { return; }
for (var i = 0; i < obj.options.length; i++) {
obj.options[i].selected = true;
}
}
但问题是如何称呼它?出于这个原因,我不想添加另一个按钮。
在选择中应该有类似onfill
或类似的东西。