我添加了两个按钮,1个在html上,1个在php上.... 通过使用ajax获取第二个按钮..
但是当我向按钮添加事件时,html页面上的那个只能工作......需要一些帮助......
HTML
<input type="button" value="button 1" class="btn">
<div id="div"><div>
<script>
$.ajax({
url:"btn2.php", success:function(data){
$('#div').html(data);}
});
$('.btn').click(function(){
alert("button is wrking");
});
</script>
PHP
<?php
echo"<input type='button' value='button 2' class='btn'>";
?>
任何人都可以帮助我
答案 0 :(得分:0)
您的PHP代码会导致语法错误。将其输出为字符串:
<?php
echo '<input type="button" value="button 2" class="btn">';
?>
甚至不需要PHP:
<input type="button" value="button 2" class="btn">
另一个问题是你的jQuery代码不起作用,因为它选择了函数调用时出现的元素,但之后你的按钮将被加载(异步)!
$( "#div" ).on( "click", ".btn", function() {
alert("button1 is working");
});
答案 1 :(得分:0)
请不要将html代码括在<?PHP ?>
代码
如果你简单地放
<input type="button" value="button 2" class="btn">
在你的ajax目标页面(btn2.php)中它会起作用。
要使已定义的click handler
也适用于加载了ajax的内容
使用
$('.btn').live('click', function({ alert(1); }));
答案 2 :(得分:0)
将您的点击事件绑定在ajax响应中或使用.on()
作为@ComFreek建议
$.ajax({
url:"btn2.php",
success:function(data){
$('#div').html(data);
$('.btn').click(function(){
alert("button1 is wrking");
});
}
});