Element选择器

使用Element创建条目的Select选择器,创建条目时默认去重了,有什么办法让Select选择器不去重吗

filterable select 加上这个试试

基于GPT的回答:
Element中的Select选择器默认会去重选项,如果你需要在Select选择器中保留重复的选项,可以将Select选择器的multiple属性设置为true,这样就可以允许用户选择多个重复的选项。

例如,以下代码创建了一个包含重复选项的Select选择器,并将其multiple属性设置为true:


from  lxml import etree

# 创建Select选择器
select = etree.Element("select", multiple="true")

# 添加重复选项
option1 = etree.Element("option", value="1")
option1.text = "选项1"
select.append(option1)

option2 = etree.Element("option", value="2")
option2.text = "选项2"
select.append(option2)

option3 = etree.Element("option", value="3")
option3.text = "选项3"
select.append(option3)

option4 = etree.Element("option", value="2")
option4.text = "选项2"
select.append(option4)

# 输出Select选择器
print(etree.tostring(select, pretty_print=True, encoding="unicode"))

这样创建的Select选择器将会保留重复选项。

希望帮到你,望采纳

img


你那边运行的时候这边去重了是这个意思么

可以不去重 你保证id唯一值就行啦

该回答引用ChatGPT

使用Element创建条目的Select选择器默认会去重,如果需要让它不去重,可以设置multiple属性为multiple="multiple",然后在创建选项时使用相同的值来创建多个选项。例如:

<select multiple="multiple">
  <option value="apple">Apple</option>
  <option value="banana">Banana</option>
  <option value="apple">Apple</option>
  <option value="cherry">Cherry</option>
  <option value="banana">Banana</option>
</select>

在这个例子中,multiple属性告诉浏览器可以选择多个选项,然后使用相同的值来创建了多个选项,这些选项不会被去重。

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你看下这篇博客吧, 应该有用👉 :element常见错误
  • 除此之外, 这篇博客: element 使用过程中遇到的问题及解决方法中的 9.Select 选择器的弹框不跟随滚动条一起移动 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    可以发现,弹框并没有随表单项一起移动。element官网文档的Select中,给出了一个解决方法:

    这样确实能解决问题,但更好的解决方法是找出造成此问题的原因。

    经过调试发现,造成这个问题的原因是为form表单元素加入了overflow-y:auto。只要去掉这个样式即能解决问题。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^