сначала выполните JS, а затем перейдите к 'page.php на <a> - PullRequest
0 голосов
/ 02 марта 2012
<script>
 function delete(){
       .
       .
 }
</script>

<a href='page.php' onClick="delete()">Delete</a>

Я хотел бы сначала выполнить JS, а затем перейти к «page.php». Просто интересно, возможно ли это?

Большое спасибо

Ответы [ 4 ]

2 голосов
/ 02 марта 2012

В delete добавьте функцию в конце:

function delete(a){
    // ...
    window.location = a.href;
}

И вызовите эту функцию с помощью:

<a href='page.php' onClick="delete(this)">Delete</a>
0 голосов
/ 02 марта 2012

НЕ используйте предопределенное ключевое слово, которое может привести к сбросу кода. Например:

я использовал функцию удаления, // она не работает, потому что она предопределена,

<a href="index2.php" onclick="delete(event)">clickuuu mee</a>
<script>

    function delete(e){
       alert("+++++++++++++++++++++++");
        // e.preventDefault();
    }
</script>

Здесь я использовал delete1, это работает,

<a href="index2.php" onclick="delete1(event)">clickuuu mee</a>
<script>
    function delete1(e){
       alert("+++++++++++++++++++++++");
        //e.preventDefault();
        //window.location = a.href;
        //return false;
    }
</script>

проясни,

0 голосов
/ 02 марта 2012

Во-первых, вы не можете вызвать функцию «удалить», потому что это частное ключевое слово.Вместо этого используйте delteItem.

Функция удаления будет вызываться всегда перед перенаправлением браузера.У вас могут возникнуть проблемы в случае асинхронного вызова внутри функции удаления.Таким образом, поместите «return false» на клик привязки для отключения ссылки и поместите перенаправление внутри функции.

0 голосов
/ 02 марта 2012

Не используйте delete () для имени функции.Это ключевое слово в javascript, поэтому функция не работает.Затем используйте функцию return при вызове функции, она сначала выполняет js, а затем переходит на страницу page.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...