我目前正在使用ajax将新选项附加到多选框,但即使我正在尝试向其添加标题属性,它们似乎根本不显示。有什么东西我不见了吗?
这是在Coffeescript中完成的:
$.ajax(
type: 'get'
url: '/Filter/LookupClassification'
data: ( term: inputVal )
dataType: 'json'
success: (response)->
select = document.getElementById('getClassBox')
select.options.length = 0
$.each(response, (key, value)->
option = $(
'<option/>'
'title': value.toUpperCase()
'value': key
).text(key + ' - ' + value.toUpperCase())
$('#getClassBox').append(option)
)
$('#selectClassBox option').each((index, value)->
val1 = $(value).val()
if $('#getClassBox option').val() is val1
$('#getClassBox option[value=' + val1 + ']').remove()
)
)
答案 0 :(得分:1)
<option>
元素不能具有“title”属性。 See the spec.
编辑 - 我的意思是,如果您愿意,可以添加“标题”属性,但浏览器不会像“标题”属性那样关注它在<div>
或<button>
元素上。
再次编辑 - 您也应该忽略这一点,因为虽然它不在HTML5规范中,但<option>
元素上的“title”属性显然在某些浏览器中受支持。
答案 1 :(得分:0)
你可以简单地写这个来为你的下拉列表添加选项:
select.options[select.options.length] = new Option(key + ' - ' + value.toUpperCase(), key);
不要打扰标题属性。