使用Jquery控制动态内容
controlling dynamic content with Jquery
我试图用动态id控制按钮$num表示按钮的个数但是这段代码不起作用,因为在点击变量$i时,退出循环时会取相同的值:如何解决这个问题?
$(document).ready(function(){
$num=("#num").attr("value");
for ($i=0;$i<=$num;$i++){
$("#createNew"+$i).click(function(){
$("#j"+$i).hide();
$("#cNew"+$i).slideToggle(1000);
});
$("#join"+i).click(function(){
$("#cNew"+$i).hide();
$("#j"+$i).slideToggle(1000);
});
}
});
PHP代码:
while ($row=mysqli_fetch_array($result1)){
echo "<div class='"well project'">";
echo"<h1 id='"course'">".$row['courseID']." </h1></br>";
echo "<p>".$row['description']."</p></br></br>";
echo "<input type='"button'" class='"btn btn-default bt'" id='"createNew'"value='"create new'" >";
echo "<input type='"button '" class='"btn btn-default bt'" id='"join'" value='"join'">";
echo "<div id='"cNew".$i."'" style='"display:none'"></br><form method='"POST'" action='"createNewProject.php?reg=".$row['regID']."'" ><label for='"title'" >Project title</label><input type='"textbox'" class='"form-control'" name='"title'"></br><label for ='" Pdescription'">description</label><textarea name='"Pdescription'" class='"form-control'"></textarea></br> <input type='"submit'" vlaue='"create'" class='"btn btn-default bt'" ></form></div>";
echo"</br></br><div id='"j".$i."'" style='"display:none'"><form method='"post'" action='"joinProject.php?reg=".$row['regID']."'"><label for='"pId'">Enter the project ID</label><input type='"textbox'" class='"form-control'" name='"pId'"></br> <input type='"submit'" value='"Send requst'" class='"btn btn-default bt'"></br></form></div>";
echo "</div>";
$i++;
}
}
else
echo"<div class='"well project'"><h1>No new projects</h1></div>";
echo "<input type='"textbox'" id='"num'" value='"".$i."'" style='"display:none'">";
最好使用事件委托。我们也可以使用动态数字作为选择器的一部分。
$('body').on('click', '[id^="createNew"], [id^="join"]', function(){
var id = $(this).prop('id').split('createNew')[1];
$('#j'+id).hide();
$('#cNew'+id).slideToggle(1000);
});
$('body').on('click', '[id^="join"]', function(){
var id = $(this).prop('id').split('join')[1];
$('#cNew'+id).hide();
$('#j'+id).slideToggle(1000);
});
实现的功能是这样的:
相关文章:
- 动态树控制
- 控制不止一次跳水的风格's风格使用java脚本动态,使用类
- 通过向动态id添加字符串,使用JavaScript控制文本框
- 如何使用 jquery 动态控制滚动条
- 使用简单的JS动态控制此URL中的参数,以控制内容大小,适合屏幕
- 动态控制的 z 索引
- 根据屏幕宽度动态控制要显示的网格数
- AngularJS中的表单验证和动态控制
- javascript动态数据控制错误
- 动态更改html5输入控制所需的中庭
- 在javascript中创建对象时动态控制参数
- 如何检查如果一个相同的域,动态加载的iframe,我没有控制是100%加载
- Bigcommerce模板:如何动态控制数量'每项
- 控制二维动态数组
- 如何在ASP中动态显示图像.. NET文字控制
- JavaScript和CSS动态版本控制
- 在JQuery Mobile中动态控制多个复选框
- 动态控制添加的字段'标签顺序与原型
- 使用jQuery和PHP MySQL创建动态控制流程图
- 动态控制HTML5音频与JavaScript