文件上传对话框未显示

时间:2012-10-23 07:22:06

标签: jquery upload internet-explorer-9

上传文件时遇到问题。当我单击ClickMe按钮时,会显示对话框确认。单击“确定”按钮时,不显示上载文件对话框。如果我在控制台中运行代码,则会显示上载文件对话框。这是我的源代码:

<html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.0/jquery-ui.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.0/themes/dark-hive/jquery-ui.css" />
<script type="text/javascript">
function showUpload() {
   $("#tpl_file").click();
};
$(document).ready(function(){
    $("#verify_dialog").dialog({
        "autoOpen": false,
        "modal": true,
        "buttons": [{
            "id":"btn_okdialog",
            "text": "yes",
            "click": function() {
                showUpload();
            }
          },
          {
            "id":"btn_cancedialog",
            "text": "no",
            "click": function() {
                $(this).dialog("close");
            }
          }
        ]
    });
    $("#ClickMe").button();
    $("#ClickMe").click(function(){
        $("#verify_dialog").dialog("open");
    });
});
</script>
</head>
<body>
<button title="ClickMe" id="ClickMe">ClickMe</button>
<input type="file" name="tpl_file" id="tpl_file">
<div id="verify_dialog" style="display:none;" title="verify_dialog">
    <div id="message">are you sure?</div>
</div>
</body>
</html>

你能帮忙找出错误吗?

1 个答案:

答案 0 :(得分:0)

您的函数showUpload()被触发,但其中的代码不起作用:

$("#tpl_file").click();

我不确定你想做什么,如果你想触发点击事件,你应该使用:

$("#tpl_file").trigger('click');