动态创建的表单未提交,jQuery
Dynamically created form not submitting, jQuery
完全菜鸟,谁能告诉我为什么 $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!");
});
您实际上是在提交 div,而不是表单
首先将您的代码放入 $( document ).ready() 块中。
然后更改代码的顺序。
你会看到当 'var $pmForm = $('#send-pm-message');'正在执行 DOM 还没有表单。
您的提交操作也是如此。
我建议你把它们都放在 append 之后,click 里面。
谢谢拉凯什!
<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>
完全菜鸟,谁能告诉我为什么 $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!");
});
您实际上是在提交 div,而不是表单
首先将您的代码放入 $( document ).ready() 块中。
然后更改代码的顺序。
你会看到当 'var $pmForm = $('#send-pm-message');'正在执行 DOM 还没有表单。
您的提交操作也是如此。
我建议你把它们都放在 append 之后,click 里面。
谢谢拉凯什!
<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>