Php 让jquery处理动态内容
我目前正在页面的许多部分使用非常类似的AJAX post请求:Php 让jquery处理动态内容,php,jquery,Php,Jquery,我目前正在页面的许多部分使用非常类似的AJAX post请求: $(document).ready(function() { $("#name").change(function(e){ var vname = $("#name").val(); $.post("addit.php", {name:vname}, function(response, status) { $("#table").html(response);
$(document).ready(function() {
$("#name").change(function(e){
var vname = $("#name").val();
$.post("addit.php", {name:vname}, function(response, status) {
$("#table").html(response);
});
});
});
上面的代码工作得很好
我在获取动态加载内容的任何功能时遇到问题。例如,一个AJAX调用抓取的表单放在我的页面中,上面的这个表单不起作用
如果我们可以假设我运行的是与上面相同的AJAX调用,但是使用AJAX在PHP脚本中动态加载的内容上运行。我的电话是什么样子的#table是一个静态元素,它总是出现在页面上
我尝试过这个方法,但不起作用:
$(document).ready(function() {
$("#table").on("click", "#btn1", function(e){
e.preventDefault();
var vname = $("#name").val();
$.post("addit.php", {name:vname}, function(response, status) {
$("#table").html(response);
});
});
});
目前,我没有得到任何显示在控制台上,它只是不工作
我在这里做的对吗
html将如下所示:来自php:
<table id='table'>//this is the static element form is echoed
<form method='post'>
<input id='name' name = 'name'>
<button id='btn1' type='submit'>Add me</button>
</form>
</table>
//这是一个静态元素表单,它被回显
加我
我已经更改了我的代码,只需单击按钮,而不是更改 我想你的问题是你错过了
$( document ).ajaxComplete(function() { "script here will run and be available after ajax load" });
尝试使用以下命令更新代码
$(document).ready(function() {
$("#table #btn1").on("click", function(e){
e.preventDefault();
var vname = $("#name").val();
$.post("addit.php", {name:vname}, function(response, status) {
$("#table").html(response);
});
});
});
当动态添加的元素不在文档中时,无法在该元素上设置函数
如果可能的话,不要使用
而是使用
你介意发布相关的标记代码吗?你是否尝试过手动创建元素var el=$(“一些文本”)然后将它们附加到现有的DOM元素$(“#表”).append(el)代码>而不是直接修改HTML?我相信在一个元素中更改整个HTML会破坏DOM树{
会更好参考此链接是否可以使用此方法找到我的输入?我将尝试我不应该总是注意向下投票是否每次加载ajax时都有效?是的,上面的一个将全局触发。下面将触发不同的ajax调用。$.ajax({beforeSend:function(){//Handle the beforeSend event},complete:function(){//Handle the complete event}/..});*source