Javascript 。单击一个不适用于Mac OS但适用于Windows/linux的Onchange

Javascript 。单击一个不适用于Mac OS但适用于Windows/linux的Onchange,javascript,jquery,macos,Javascript,Jquery,Macos,所以我有一个HTML部分,它是 <select name="espece-prise" id="espece-prise" size="1" onchange="selectespece();"> <option value="{liste.espece}">{liste.espece}</option> </select> 我还使用jQuery以多种不同的方式实现了这一点 $("#espece-prise").on('change',

所以我有一个HTML部分,它是

<select name="espece-prise" id="espece-prise" size="1" onchange="selectespece();">
    <option value="{liste.espece}">{liste.espece}</option>
</select>
我还使用jQuery以多种不同的方式实现了这一点

$("#espece-prise").on('change', function(){
    especeprise = $("#espece-prise").val();
    $(".btn_poster_photo").click();
})
发生了什么事?

当我选择一个选项时,它会触发点击,因此它会要求我上传一张图片,这是正常的。这适用于Chrome/Firefox/Opera。。。当我在Windows/Ubuntu/archlinux计算机上执行此操作时

但是

当我从MacOS在safari/chrome上试用时,它不起作用,控制台中没有错误,我只是选择了一些东西,什么也没发生。我试图在我的函数“onchange”中添加一个警报,它可以正常工作,但不能正常工作。单击函数


我在Google上做了几次搜索,但只找到了几个关于onchange后的onclick的主题,而不是。单击onchange。

您只能通过编程从用户启动的事件触发文件对话框窗口

在这种情况下,我不确定
更改
事件是否算数,因为通常用户启动的事件类似于
单击
鼠标向下
鼠标按下
滚动
调整大小
按键
,等等


也许可以尝试重构以对上述事件之一作出反应(从
)来代替。

您只能从用户启动的事件以编程方式触发文件对话框窗口

在这种情况下,我不确定
更改
事件是否算数,因为通常用户启动的事件类似于
单击
鼠标向下
鼠标按下
滚动
调整大小
按键
,等等


可能尝试重构以响应上述事件之一(从您的
)。

是否尝试$(“.btn\u poster\u photo”)。触发(“单击”)?触发器不是一个“一次性”功能吗?我的意思是,如果我选择某个对象,然后关闭文件窗口并选择另一个窗口,它将再次触发?每次调用selectespece()函数时,它都会被触发。您可以调用selectespece()来触发单击。在窗口加载或文档准备就绪时只需一次即可。确定我尝试更改。通过触发器单击(“单击”),它也不起作用:/-它在两个操作系统上对我都起作用。你用的是角形的吗?为什么不使用ng更改属性?或者只是将模板插入html?您是否尝试过$(“.btn_poster_photo”)。触发(“单击”)?触发器不是一个“一次性”功能吗?我的意思是,如果我选择某个对象,然后关闭文件窗口并选择另一个窗口,它将再次触发?每次调用selectespece()函数时,它都会被触发。您可以调用selectespece()来触发单击。在窗口加载或文档准备就绪时只需一次即可。确定我尝试更改。通过触发器单击(“单击”),它也不起作用:/-它在两个操作系统上对我都起作用。你用的是角形的吗?为什么不使用ng更改属性?或者只是将模板插入html?我在select上尝试了一个与onchange类似但不起作用的onclick事件:/我在select上尝试了一个与onchange类似但不起作用的onclick事件:/
$("#espece-prise").on('change', function(){
    especeprise = $("#espece-prise").val();
    $(".btn_poster_photo").click();
})