javascript - 在jquery中获取实际点击的按钮属性

标签 javascript jquery html

实际上我想在将图像上传到服务器之前预览图像,所以下面是 html 代码

<html>
<script>
function readURL(input) {
    if (input.files && input.files[0]) 
    {.......}}

$("#selectedFile").change(function(){
    readURL(this);
}); 
</script>

<body>

  <input id="selectedFile" type="file" name="banner_image"/>

  <input type="button" value="Upload image"   onclick="document.getElementById('selectedFile').click();" class="btn btn-large big_btn"/>

</body>
</html>

根据我的表单设计功能,我需要单击一个按钮将文件上传到服务器,如上所述,然后我单击输入文件字段值并将该文件字段数据发送到 readURL() 上面的函数。

因此,当我尝试在 change 函数中获取 id、name、value 属性时,我正在获取输入文件字段 的属性,因此我是否能够获取更改函数中按钮属性的值?

最佳答案

一种选择是将单击的按钮存储在全局变量中


var clickedBtn = null;

function readURL(input) {
    if (input.files && input.files[0]) 
    {
        alert(input);
    }
}

$("#selectedFile").change(function(){
    if (clickedBtn != null)
    {
        alert(clickedBtn.attr('class')); // get the class attribute, for example
    }
    readURL(this);
}); 


$('.file-upload-btn').click(function(){
    clickedBtn = $(this);
    $("#selectedFile").click();
});

然后在 HTML 中,您应该从按钮中删除 onclick 属性并添加 file-upload-btn 类

关于javascript - 在jquery中获取实际点击的按钮属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20095483/

相关文章:

javascript - 在 OpenAPI (Swagger) 中使用 HMAC-SHA256 身份验证测试 API 路由

JQUERY数据表PageIndex更改事件

javascript - 将大图像站点转换为 html/css/javascript 的最简单方法?

html - 如何在一个 CSS Box 中保持三种不同的文本对齐方式?

javascript - div 中仅附加了一个 <br> 元素

javascript - 检测浏览器和版本 - 没有 Modernizr

javascript - jQuery 函数在控制台中有效,但在代码中无效

javascript - 如何为每个div项添加标题名称并连续显示5个div项?

javascript - 动态 html 内容

jquery - 使用 jQuery 附加来自同级的内容