javascript确认对话问题

时间:2011-01-18 15:51:48

标签: javascript firefox google-chrome

我遇到了一些问题,确认对话框无法使用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 + " ?");
}

它正在发挥作用。事实证明,即使没有document.getElementById,Chrome也可以在文档中找到元素,FF不能(不会)!

2 个答案:

答案 0 :(得分:3)

是否在Firefox和Chrome中安全地定义了somelink

当我尝试使用您的代码时,如果someLink已定义,则可在FF和Chrome中成功运行,如果未定义,则无法按照您的描述进行操作。

答案 1 :(得分:0)

以前从未见过这个,但是做了一些谷歌搜索,并想出了以下内容: http://www.tek-tips.com/viewthread.cfm?qid=1431250&page=10

对我来说似乎有些不高兴,但我想我还是会指出来的。看起来他们建议多加“返回假”;在函数调用后的onclick中。