如何从外部文件中运行函数作为表单的操作?

时间:2014-11-13 09:36:26

标签: javascript jquery html

说明

目前我的html文件的格式如下:

<form id="my_form" action="javascript:OnAction()" method='post' >
</form>

我有javascript功能&#34; OnAction()&#34;在script.js等外部文件中。

问题:

OnAction()函数不运行,如果它位于外部文件中(在html中运行此函数)。 运行外部文件中的其他脚本(这意味着脚本文件已正确连接)。

问题:

如何在表单的操作上运行OnAction()函数并将其保存在外部文件中?

是存在绑定类似的东西的方式:

$('#my_form').on('action', function() {
    // OnAction here
});

4 个答案:

答案 0 :(得分:2)

将您的HTML更改为:

<form id="my_form" action="" onSubmit="OnAction()" method='post'></form>

你只需要这样做:

function OnAction() {
    // OnAction here
};

或者更好的方法是使用Jquery放置您的事件:

HTML:

<form id="my_form" action="" method='post'></form>

JS:

$("#my_form").on("submit", function() {
    /* OnAction here*/
});

答案 1 :(得分:1)

$('#my_form').on('action', function() {

提交表单时触发的事件为submit而非action。使用它(如果JS失败,在操作中使用实际URL和服务器端回退;不要忘记preventDefault())。

答案 2 :(得分:0)

将外部文件的引用添加到HTML文件中。

答案 3 :(得分:-1)

在您的HTML中:

...
<form method="post" id="myform">
<input type="submit"/>
</form>

<script src="abc.js" type="text/javascript">

</script>
</body>

在你的js中。文件:

var elem = document.getElementById("myform");
elem.addEventListener("submit", function() {
   //
},false);