覆盖javascript函数

时间:2014-11-26 09:42:03

标签: javascript joomla

Joomla.submitbutton是joomla中的核心javascript函数。当用户点击取消按钮或保存按钮时,以提交形式调用此函数。我会像这样覆盖此函数。

savefn=Joomla.submitbutton ;
Joomla.submitbutton =function() {  
    timeval=jQuery("div.controls > input#jform_longth.inputbox").val();
    if(timeval.length < 8){
        alert("Enter time in correct format");
    }
    else {
        savefn('settime.save') ;
    }
}

当用户点击调出的保存按钮Joomla.submitbutton('settime.save')并且当用户点击被叫取消按钮Joomla.submitbutton('settime.cancel')时。我如何确定用户点击取消按钮或保存按钮。 换句话说,当我覆盖函数时,我如何在Joomla.submitbutton上获得参数。

2 个答案:

答案 0 :(得分:2)

您可以在函数中使用参数,如下所示:

if(arguments[0].toLowerCase()=='save'){

} else{

}

答案 1 :(得分:1)

Joomla docs的一个例子:

var submitbuttonfn = Joomla.submitbutton;
Joomla.submitbutton = function(pressbutton) {

    console.log(pressbutton);

    if (pressbutton == 'cancel') {
        submitbuttonfn(pressbutton);
    }
    else {
        var f = document.adminForm;
        if (document.formvalidator.isValid(f)) {
            submitbuttonfn(pressbutton);
        }
        else {
            alert('Validation error');
        }
    }
}