如何更新元素属性的值,然后触发点击它?

How to update value of an attribute of an element, then trigger click on it?

我想使用 jQuery 更新类型为 "file" 的输入元素的属性 "accept" 的值,然后激活它的 "click" 事件。但是 "accept" 的值改变后,没有任何反应。 这是我的代码

//html elements
<button type="button" class="abc" title="Select files from your computer" id="upload" onclick="updateExtension()"></button>
<input type="file" name="image" id="image" multiple="multiple" /> //this input field is hidden and is applied with jquery-file-upload

//jQuery function
function updateExtension(){
  $('#image').attr('accept', '.jpg, .png');
  $('#image').click();
}

您可以简单地使用:

$( "#image" ).trigger( "click" );

有关 jQuery 触发器的详细信息 click here

使用这个的简单方法:--

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

<script>
$(document).ready(function(){
    $("#click").click(function(){
               //if update(div)content
               $(".update_new_value").html("<h1>Enter content</h1>");
               //if change attr value
          $("#urls_change").attr("href", "https://www.changers.com/"); 

    });
});
</script>
</head>
<body>

<div class="update_new_value"></div>
 <p><a href="https://www.anyurls.com" id="urls_change">change urls</a></p>

<button name="btn" id="click" type="button">Click Me</button>


</body>
</html>