繁体   English   中英

在表单输入上按Enter键并更改默认操作(提交表单)

[英]Pressing enter on form input and changing default action (submit form)

我有一个简单的表格:

  • 两个输入字段facebook event linkname
  • import details链接到facebook event link输入旁边-当我单击此按钮时,它将它的href属性从/events/new更改为/events/new?fb_event_id={fb_event_id extracted from link}并使用此更新的href发出新请求。
  • submit按钮以提交表格。

http://www.bootply.com/KMfGxnrqxf

当我用以下示例填充facebook event link输入: https : //www.facebook.com/events/123并单击import details ,一切正常-将链接更改为/events/new?fb_event_id=123并发出新请求。

现在,我尝试通过按enter键而不是单击鼠标来执行相同的操作。 它将href更改为正确的href ,但不请求此新网址。

知道为什么吗?

当您使用$('#import').click();触发click事件时$('#import').click(); ,仅启动JS事件处理程序。 它不会触发与该元素关联的自然事件,即,它实际上不会将页面重定向到锚点的href。 您需要使用以下方法将该重定向添加到JS事件处理程序中:

window.location.href = '/events/new?fb_event_id='+event_id;

可以使用以下方式触发本地锚点单击行为:

$(element)[0].click();

它获取elements数组的第一个元素(DOM元素而不是jQuery对象)。

解决方案参考

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM