JavaScript подтверждает проблемы с диалогом - PullRequest
1 голос
/ 18 января 2011

У меня есть некоторые проблемы с диалоговым окном подтверждения, не работающим с Firefox, но работающим с Chrome.

HTML-код выглядит так:

<input type="submit" name="Odjava" value="Remove selected link" onclick="return odjava(somelink,'Do you really want to remove ')"/>

код JavaScript выглядит так:

function odjava(link,text)
{
    if(link=="" || text=="")
        return false;
    return confirm(text + link + " ?");
}

С Chrome все в порядке - onClick генерирует диалог «Подтвердить», и если пользователь отвечает «да», форма отправляется, в противном случае это не так.Firefox не показывает диалог подтверждения, он просто отправляет форму.

Почему это так?Что я делаю не так?

**** РЕДАКТИРОВАТЬ: Я понял!Я просто изменил свой JavaScript, чтобы он выглядел так:

function odjava(text)
{
    var linkovi = document.getElementById('linkovi');
    link = linkovi.options[linkovi.selectedIndex].text
    if(link=="" || text=="")
        return false;
    return confirm(text + link + " ?");
}

, и он работает.Оказывается, что Chrome может найти элемент в документе даже без document.getElementById, FF не может (не будет)!

Ответы [ 2 ]

3 голосов
/ 18 января 2011

Безопасно ли определено somelink в Firefox и Chrome?

Когда я пробую ваш код, он успешно работает и в FF, и в Chrome, если определено someLink, и не работает, как вы описали в обоих, если он не определен.

0 голосов
/ 18 января 2011

Никогда раньше этого не видел, но немного погуглил и придумал следующее: http://www.tek -tips.com / viewthread.cfm? Qid = 1431250 & page = 10

Мне кажется, это немного странно, но я все равно подумал бы об этом.Похоже, они рекомендуют поставить дополнительный «return false»;в вызове после вызова функции.

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