获取
<head>
<script type="text/javascript" src="js/jquery-1.11.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#btn_rhino_sub').click(function() {
var id = $(this).attr("name");
alert("" + id);
switch (id) {
case '1':
window.location = "mrhino.php";
break;
case '2':
window.location = "mrhino.php";
break;
case '3':
window.location = "mrhino.php";
break;
case '4':
window.location = "mrhino.php";
break;
}
});
});
</script>
</head>
<body>
<header>
<a href="#" id="logo"><?php echo " Welcome " . $name ; ?></a>
<div id="middle">Major Process</div>
<nav>
<a href="#" id="menu-icon"></a>
<ul>
<li>Click here for
<a href="logout.php" class="a">logout</a>
</li>
</ul>
</nav>
</header>
<section>
<?php
$query = "SELECT * FROM major_process WHERE parent_process ='0'; ";
$query_result = mysql_query($query,$link);
$row_count = mysql_num_rows($query_result);
while ($row = mysql_fetch_array($query_result, MYSQL_NUM)) {
?>
<input style="height:75px; width: 225px;"
type="button"
class="btn btn-success round"
name="<?php echo''.$row[0]; ?>"
id="btn_rhino_sub"
value="<?php echo''.$row[1]; ?>">
<?php
}
?>
</section>
...
</body>
朋友们,在这段代码中,我从数据库中获取了process_id和进程名,并以进程id作为按钮的名称和进程名作为按钮的值显示在按钮中。在点击选项,我想得到的名称(即进程id从数据库获取)的按钮单击。所以在jQuery中,我有一个onclick
事件,但onclick
的第一个按钮单独的"Id"被警告,页面被重定向,而点击其他按钮不警告任何值或重定向,但值从DB提取。
您正在创建重复的id, HTML中的标识符必须是唯一的,这是预期的行为
在下面的例子中,我已经将btn_rhino_sub
转换为一个CSS类,这样我们就可以使用类选择器(".class")
<input class="btn btn-success round btn_rhino_sub" name="<?php echo''.$row[0]; ?>"value="<?php echo''.$row[1]; ?>" >
脚本$('.btn_rhino_sub').click(function(){
var id = $(this).attr("name");
});
但是,如果您想存储自定义值,则使用data-*
前缀自定义标记,可以使用.data()
id应该是唯一的,只有一个页面上的按钮。如果需要单击的按钮不止一个,则需要按类访问元素。
<button class="btn_rhino_sub" name="whateverName">
你需要把你的click事件修改成这样:
$('.btn_rhino_sub').click(function()
{
var id = $(this).attr("name");
//rest of your code