Показать div с помощью jQuery, если передан параметр URL

0

У меня есть эти divs, настроенные на всех моих страницах, чтобы поймать, было ли действие успешным или нет через параметр URL. Предполагается, что ошибка div должна показывать, когда есть ошибка - и успех div, когда это успех.

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

В консоли firebug я получаю следующее: ReferenceError: $ не определено $ ('# action-success'). Show();

CSS:

    /* error div */
    div#action-error
    {
        text-align: center;
        border: 1px solid white;
        display: none;
        background-color: #a80077;
        border-radius: 15px;
    }

    /* success div */
    div#action-success
    {
        text-align: center;
        border: 1px solid white;
        display: none;
        background-color: #5a8e4a;
        border-radius: 15px;
    }

HTML:

    <!-- RESULT ERROR/SUCCESS -->
    <div class="container_12" id="action-error">
        <span class="error">Error: There was an error deleting your album. Please try again.</span>
    </div>
    <div class="container_12" id="action-success">
       <span class="success">Your album was deleted successfully.</span>
    </div>
    <!-- RESULT ERROR/SUCCESS END -->

Jquery:

К началу страницы: (найдено на SO)

        <script>
            function getParameterByName(name) {
                return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search)||[,""])[1].replace(/\+/g, '%20'))||null;
            }
        </script>

Дно:

        //------------------------------------------------------------------
        var error = getParameterByName('error');

        if(error){
            alert(error);
            $('#action-error').show();
        }
       //------------------------------------------------------------------
        var success = getParameterByName('result');

        if(success){
            $('#action-success').show();
        }

Я посмотрел на другие темы на SO, но ни один из них, похоже, не был тем, чем я занимаюсь. Любая помощь будет оценена, и спасибо за ваше время.

  • 0
    Можете ли вы публиковать любые ошибки JS, зарегистрированные на вашей консоли отладки (Chrome Developer Tools или Firefox Firebug)?
  • 0
    в консоли я получаю следующее: ReferenceError: $ не определено $ ('# action-success'). show ();
Показать ещё 1 комментарий

2 ответа

0
Лучший ответ

ну, ребята - это то, что происходит, когда вы кодируете полусмерти, выходя на кофе. Проблема в том, что я забыл включить библиотеку jQuery в свой файл... Извините, что потратил ваше время.

Когда я говорю, я работаю над своей шляпкой.

  • 0
    Ох молодец: P
  • 0
    Я знаю ... очень неловко. лол
0

Вы завернули JavaScript с помощью функции, которая передает jQuery как $?

(function($){
    //-----------
    var error = getParameterByName('error');

    if(error){
        alert(error);
        $('#action-error').show();
    }
   //------------------------------------------------------------------
    var success = getParameterByName('result');

    if(success){
        $('#action-success').show();
    }
    //------------

})(jQuery);
  • 0
    Извините, я не уверен, что понимаю, что вы имеете в виду ...
  • 0
    Глупо сомневаться в этом, но я все еще спрашиваю - JavaScript, имеющий $("#action-success").show() - его следует вызывать внутри функции, которая выглядит как выше. В противном случае переменная $ не определяется как jQuery. Так что, если вы используете jQuery $, у вас должна быть функция-оболочка для всего этого кода.
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню