Как перехватить URL с помощью JQuery - PullRequest
0 голосов
/ 01 июля 2011

В настоящее время я импортирую сторонний HTML-файл на свою страницу, и для него используется следующий метод java-скрипта, связанный с отправкой формы.

function ValidateInput(){
       //some code
        if(validationFailed){       
               alert("Validation failed");
                return false;
            }else{   
                return openWin("URL");
        }
    }

У меня нет контроля над этим кодом. Но я хочу перехватить URL-адрес, упомянутый в функции openWin , и я хочу провести некоторую проверку этого URL-адреса перед его открытием.

Это возможно с JQuery?

Ответы [ 2 ]

4 голосов
/ 01 июля 2011

Вам не нужен jQuery.

Вы можете заменить функцию своей и вызвать старую, если хотите.

var oldOpenWin = openWin;
openWin = function(url) {
    // do validation
    // call old one
    oldOpenWin(url);
}
1 голос
/ 01 июля 2011

Вы можете перезаписать любую функцию следующим образом:

(function(original_openWin) {
  window.openWin = function() {
    // your own code
    alert('Hello world from openWin intercept');

    // execute original openWin function
    original_openWin();
  }
})(openWin);

Пример: http://jsfiddle.net/hyadC/

...