我需要将我的应用程序中的jQuery库从1.4.3升级到1.7.2,但是我遇到了多选菜单的一些问题。我在不同的页面上遇到了一些不同的问题。在某些页面上,多选功能变为单选,而在其他页面上,当进入编辑模式时,值将丢失。
我一直在修改直播活动和不同的事件触发器,但无法弄清楚发生了什么。
我希望有人可以查看下面的代码,看看从jQuery 1.4.3升级到1.7.2时是否会出现任何错误......
谢谢!
fishMultiSelect_new: function()
{
$("select.multi").live('change',function(){
var val = $("option:selected", this).val();
if ($("option:selected", this).is(':disabled') == true) { this.selectedIndex=0; return false; }
if(!val) return false;
if(val.substr(0,3) !== 'zzz')
{
var text = $("option:selected", this).text();
$(this).next("ul.multiselect").append('<li class="round label option"><p>'+text+'</p><span value="'+val+'" class="x">x</span></li>').show();
// Disabled the selected option
$("option:selected", this).attr("disabled",true).addClass('disabled');
}
this.selectedIndex=0;
// Hack for Preparation on CRUDProduct
var I = $(this).attr("name");
if(I == 'preparation' && val == 5)
{
$("#cookingMethod-tr").show();
}
})
$("ul.multiselect li.option span.x").live('click',function(){
var value = $(this).attr("value");
var text = $(this).prev().text();
var S = $(this).parent().parent().prev("select.multi");
$("option[value='"+value+"']", $(S)).removeAttr("disabled").removeClass('disabled');
$(this).parent().remove();
// Hack for Preparation on AddProduct
if(S.attr("name") == 'preparation' && value == 5)
{
$("#cookingMethod-tr").hide();
$("#cookingmethod").val("");
}
})
}