我有一些类PhotoUploadSubmit
的按钮,当点击一个按钮时,会使用自定义点击处理程序来查看兄弟元素等。点击处理程序不起作用,{{ 1}}永不熄灭,断点没有被击中,我完全感到困惑。
debugger
就我尝试的内容而言,我尝试将点击处理程序置于<div class="formDataContext">
<input type="file" name="ImageData" style="display:none" />
<button class="PhotoUploadSubmit"><i class="fa fa-camera fa-5x"></i></button>
</div>
<script type="text/javascript">
$(function () {
$(".PhotoUploadSubmit").on("click", function () {
debugger;
var currentFormDataContext = $(this).closest(".formDataContext");
console.log(currentFormDataContext);
var FileInput = currentFormDataContext.find("input:file")[0];
console.log(FileInput);
$(FileInput).click();
});
$("input:file").change(function () {
var currentFormDataContext = $(this).closest(".formDataContext");
uploadImage(currentFormDataContext);
});
});
</script>
之外,我尝试使用document.ready
关键字,并尝试设置断点。没有控制台错误。
答案 0 :(得分:3)
由于buttons
是动态添加的,因此您可以delegate。例如:
$("body").on("click", '.PhotoUploadSubmit', function () {
debugger;
var currentFormDataContext = $(this).closest(".formDataContext");
console.log(currentFormDataContext);
var FileInput = currentFormDataContext.find("input:file")[0];
console.log(FileInput);
$(FileInput).click();
});