动态创建的表单不提交,jQuery

时间:2016-03-02 11:22:22

标签: jquery forms submit

在这里完成noob,有人可以告诉我为什么$ pmForm.submit不会在这里工作吗?我读到它很可能是一个事件委托问题,我尝试重写它的方式,但仍然无法让它工作。

提前谢谢!

<script src="jquery.js"></script>
<script src="jquery-ui.js"></script>


<div id="placehere"></div>
<input id="testbutton" type="submit" value="test"></input>

<script>
var $pmForm = $('#send-pm-message');

        var html ="<div><form id='send-pm-message'><textarea id='pm-message' autocomplete='off' cols='40' rows='1'></textarea><input id='button' type='submit' value='Send'></input></form></div>";

            $("#testbutton").click(function(){
            $("#placehere").append(html);
        });

        $pmForm.submit(function(e){
            alert("I am an alert box!");
        });

3 个答案:

答案 0 :(得分:1)

首先将代码放在$(document).ready()块中 然后更改代码的顺序。
你会看到'var $ pmForm = $('#send-pm-message');'正在执行DOM还没有表单。
您的提交操作也是如此。 我建议你在追加之后将它们放在点击内。

答案 1 :(得分:0)

您实际上是在提交div而不是表单

答案 2 :(得分:0)

谢谢拉克什!

<input id="testbutton" type="submit" value="test"></input>  
<div id="placehere"></div>      
<script>
$( document ).ready(function() {

        var html ="<form id='send-pm-message'><textarea id='pm-message' autocomplete='off' cols='40' rows='1'></textarea><input id='button' type='submit' value='submit'></input></form>";

            $("#testbutton").click(function(){
                $("#placehere").append(html);
                $('#send-pm-message').on('submit',function() {
                alert("I am an alert box!");
                });

            });

});     
</script>