ドロップダウンに効果を与えるためにjqueryを使用しましたが、jqueryを挿入した後、selectedindexedの変更された関数を機能させることができません。しかし、jquery を削除すると、すべて正常に動作しているように見えます。
もう1つのことは、ドロップダウンにjqueryを適用した後、ドロップダウン内のすべてのアイテムがオプションではなくリストアイテム「li」として表示されることです。
JavaScript関数も使用してみましたが、ドロップダウンでjqueryを使用するたびに同じことが起こります。
コードは次のようになります。
<asp:DropDownList ID="DropDownProducts" Width="150px" CssClass="RegistryDrop"
runat="server" AutoPostBack="True" OnDataBinding="dropprodsbinding"
OnSelectedIndexChanged="DropDownProducts_SelectedIndexChanged"
DataTextField="Name" AppendDataBoundItems="True"
DataValueField="id">
</asp:DropDownList>
コードの背後にあるコードは次のとおりです。
function getSelectOptions(parentid) {
var select_options = new Array();
var ul = document.createElement('ul');
$select.children('option').each(function () {
var li = document.createElement('li');
li.setAttribute('id', parentid + '_' + $(this).val());
li.innerHTML = $(this).html();
if ($(this).is(':selected')) {
$input.val($(this).html());
$(li).addClass(opt.currentClass);
}
ul.appendChild(li);
$(li)
.mouseover(function (event) {
hasfocus = 1;
if (opt.debug) console.log('over on : ' + this.id);
jQuery(event.target, $container).addClass(opt.hoverClass);
})
.mouseout(function (event) {
hasfocus = -1;
if (opt.debug) console.log('out on : ' + this.id);
jQuery(event.target, $container).removeClass(opt.hoverClass);
})
.click(function (event) {
var fl = $('li.' + opt.hoverClass, $container).get(0);
if (opt.debug) console.log('click on :' + this.id);
$('li.' + opt.currentClass).removeClass(opt.currentClass);
$(this).addClass(opt.currentClass);
setCurrent();
hideMe();
});
});
return ul;
}
何らかの解決策が得られることを願っています。ありがとうございました