在这里完成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!");
});
答案 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>