使表单运行javascript函数?

时间:2012-10-02 17:10:37

标签: javascript html forms

如何在点击提交时让我的表单运行一个函数?

<form id="commentForm" name="comment">
    <fieldset>
        <label for="name">Name <span>(required)</span></label>
        <input type="text" class="text" id="name" value="" />
        <label for="email">Email <span>(will not be published) (required)</span></label>
        <input type="text" class="text" id="email" value="" />
        <label for="website">Website</label>
        <input type="text" class="text" id="website" value="" />
        <label for="message">Message <span>(required)</span></label>
        <textarea id="message" class="textarea" rows="10"></textarea>
        <input type="submit" name="submit" class="submit" id="submit_btn" value="Submit Comment" action="JavaScript: ajax_add_comment();">
    </fieldset>
    ...

我正在尝试运行以下功能:

function ajax_add_comment () {
    alert ("testing");
}

3 个答案:

答案 0 :(得分:4)

使用onclick属性代替action

答案 1 :(得分:1)

您可以使用jQuery,并使用.submit()功能。 您可以为表单提供id,然后将提交功能附加到其中。

示例:

<form id="execute"....

</form>

<script type="javascript">
$("#execute").submit(function(){
 alert("i've submitted this form");
});
</script>

确保已包含jquery js文件。

<script src="http://code.jquery.com/jquery.min.js" type="text/javascript"></script>

答案 2 :(得分:1)

您可以在提交表单时使用onsubmit事件来执行JavaScript代码。例如:

<script>
function ajax_add_comment () {
  alert ("testing");
}
</script>

<form id="commentForm" name="comment">
                            <fieldset>
                                <label for="name">Name <span>(required)</span></label>
                                <input type="text" class="text" id="name" value="" />
                                <label for="email">Email <span>(will not be published) (required)</span></label>
                                <input type="text" class="text" id="email" value="" />
                                <label for="website">Website</label>
                                <input type="text" class="text" id="website" value="" />                                                                
                                <label for="message">Message <span>(required)</span></label>
                                <textarea id="message" class="textarea" rows="10"></textarea>
                                <input type="submit" name="submit" class="submit" id="submit_btn" value="Submit Comment" onsubmit="ajax_add_comment();">
                            </fieldset>

谢谢!