2013-07-31 3 views
1

Я имею функцию, которая повторяется во всем на моем сайтеКак отформатировать повторно используемый код от нормального Jquery кода

Jquery

$(function() { 

//check the enabled state on load 
if(!$(".notifyOwner").is(':checked')){ 
    $(".ownerDay").attr("disabled", "disabled"); 
    $(".ownerDaytype").attr("disabled", "disabled"); 
} 

//toggle the enabled state when the checkbox is clicked 
$(".notifyOwner").click(function() { 

    if($(this).is(":checked")) { 
    $(".ownerDay").removeAttr("disabled"); 
    $(".ownerDaytype").removeAttr("disabled"); 
    $(".ownerActive").removeClass("disabled"); 
} else { 
    $(".ownerDay").attr("disabled", "disabled"); 
    $(".ownerDaytype").attr("disabled", "disabled"); 
    $(".ownerActive").addClass("disabled"); 
} 



}); 

}); 

Я попытался сделать это в качестве повторно используемого кода, как показано ниже

function selectToggle(obj, dayclass, daytypeclass, txtactive){ 
var $event = $(obj); 

if(!($event).is(":checked")) 
{ 
    $(dayclass).attr("disabled", "disabled"); 
    $(daytypeclass).attr("disabled", "disabled"); 
} 

$event.click(function() { 

    if($event.is(":checked")) 
    { 
    $(dayclass).removeAttr("disabled"); 
    $(daytypeclass).removeAttr("disabled"); 
    $(txtactive).removeClass("disabled"); 
} else { 
    $(dayclass).attr("disabled", "disabled"); 
    $(daytypeclass).attr("disabled", "disabled"); 
    $(txtactive).addClass("disabled"); 
} 
}); 
} 

И называя его как OnClick = "selectToggle (это, 'ownerDay', 'ownerDaytype', 'ownerActive')"

Но его не работает. Где моя ошибка в этом скрипте.

ответ

1

Вы не называете jquery select как класс. То есть «ownerDay» должен быть «.ownerDay» в вашем вызове. То же самое для остальных.