<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为按钮名称,进程名称为按钮的值。点击选项我想获得点击按钮的名称(即从DB获取的进程ID)。所以在jQuery中我有一个onclick
事件但只有onclick
的第一个按钮,“Id”被警告并且页面被重定向,而点击其他按钮不会提醒任何值或重定向,但值是从DB获取的。
答案 0 :(得分:0)
您正在创建重复的ID, HTML中的标识符必须是唯一的,这是预期的行为。
使用类,此处在下面的示例中,我已将btn_rhino_sub
转换为CSS类,以便我们可以使用Class Selector (".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");
});
但是,如果您想存储costom值,请使用data-*
前缀的标签,可以使用.data()
答案 1 :(得分:0)
对于页面上的一个按钮,ID应该是唯一的。如果需要单击多个按钮,则需要按类访问该元素。
<button class="btn_rhino_sub" name="whateverName">
您需要将点击事件更改为以下内容:
$('.btn_rhino_sub').click(function()
{
var id = $(this).attr("name");
//rest of your code