2013-08-05 43 views
1

我有一个JavaScript函数IE:在链接点击javascript函数调用不工作

function changeDocument(idxpv, open){ 
    if(open) 
     $("#Upload"+idxpv + " input[type=file]").click(); 
} 

和点击链接的链接现在

<a href="javascript:changeDocument(1,true);" class="close fileupload-exists" 
    data-dismiss="fileupload">change document</a> 

IE9/8所示的提示框要求LEAVE THE PAGESTAY ON PAGE

编辑

文件上传按钮从Valum的qqFileuploader库生成。

有人能指导我什么是错呢?

+0

@Padyster如果'开放=== FALSE'会发生什么? IE浏览器必须尝试关注链接,并且仍然在后台运行...尝试添加'return false'以防止浏览器更改页面 – guiligan

+2

请提供确切定义了所述功能的位置,如果单击此页面上的查找控制台中的任何错误,并提供您在进入此处之前自行完成的任何调试。 –

+0

如果你没有看到DOWNVOTE有什么好的理由,那你为什么没有任何评论就低估了? – Padyster

回答

1

不执行$("#Upload1 input[type=file]").click();的呼叫,因为open是不确定的。

我复制你的代码本文档中:

  • 点击链接调用函数changeDocument()
  • 但由于开放是不确定的。如果你改变调用click事件不会触发

到这个javascript:changeDocument(1, true);点击被激发,文件打开对话框被调用。

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
    <meta charset="utf-8"> 
    <title>html 5</title> 
    <script src="../jQuery/jquery_1.9.1.js"></script> 
    <script> 
     function changeDocument(idxpv, open){ 
     console.log("idxpv", idxpv); 
     console.log("open", open); 
     if(open) 
      $("#Upload"+idxpv + " input[type=file]").click(); 
    } 

    </script> 
    </head> 
    <body> 
    <p> 
    <a href="javascript:changeDocument(1, true);" class="close fileupload-exists" 
       data-dismiss="fileupload">change document</a> 
    </p>     
    <p id="Upload1">  
    input type=file: <input type="file">     
    </p> 
    </body> 
</html> 

如果您有更多的问题随时问。

+0

是的右r ..有这个结论..但它仍然无法与IE9/IE8 – Padyster

+0

我更新的问题与更多细节 – Padyster