所以,我将局部视图渲染为bs模态,在其中我有文件输入,我希望在显示模态时立即打开。我已经尝试了很多很多方法来使它工作,但它一直在抵制:)也许有人有线索是什么问题。
这是我的View JS:
$(function() {
$(document).off('shown.bs.modal', '#js-edit-avatar-modal');
$(document).on('shown.bs.modal', '#js-edit-avatar-modal',
function() {
console.log($('#browse-btn'));
$('#browse-btn').click();
});
});
以模态输入:
<label id="browse-btn" class="btn btn-sm btn-primary">
@ApplicationStrings.BrowseText
<input type="file" name="image" id="image" onchange="readUrl(this);" style="display: none" />
</label>
这是控制台:
第一个是用
触发的的console.log($(&#39;#浏览-BTN&#39;));
其他两个我手动输入,第二个显示它返回相同的对象,第三个打开输入对话框。
我尝试过:删除display:none,使用$('#browse-btn').trigger('click');
将事件更改为show.bs.modal,在显示模态后设置2秒延迟然后触发click事件,尝试触发另一个仅具有日志记录功能的按钮,仍然没有奏效。
也许在隐藏按钮上自动调用click事件有一些安全限制?但是,当我将其显示为可见时,它仍然无效,并且键入完全相同的
控制台中的$(&#39;#浏览-BTN&#39)。单击();
始终有效。
任何信息都将不胜感激。
答案 0 :(得分:0)
您可以尝试使用以下代码,让我知道是否有效。
$('#browse-btn').trigger("click");