簡體   English   中英

單ID在while循環中同時提醒

[英]single id alerting same time in a while loop

我有一張桌子,我可以從那里取活動並顯示在桌子上……就像這樣

<table width="1000px;" style="border:0px;" >
    <tr>
        <?php
            $sql_activities="select * from tb_activities";
            $query_activities=mysql_query($sql_activities);
            while($row_activities=mysql_fetch_array($query_activities))
            {
        ?>
        <td width="50">
            <input type="radio" value="<?php echo $row_activities['activity_name']; ?>" name="activities" onclick="hi() " id="activities" /><?php echo " ".$row_activities["activity_name"]; ?></td>
            <?php    
            } 
            ?>
    </tr>
</table>

現在,我將其應用於單選按鈕的onlick事件中,該函數的腳本為:

<script type="text/javascript">
function hi()
{
    a = document.getElementById("activities").value;
    alert(a);
}

</script>

我想提醒所選活動的名稱,但是當我單擊任何活動時,它都顯示相同的名稱。 第一次活動。即使我單擊了其他任何活動,任何人都可以幫助我嗎?

您應該做的是更改此:

onclick="hi()"

對此:

onclick="hi(this);

那么您的功能將是:

function hi(who) {
    var a = who.value;
    alert(a);
}

在PHP方面,事情發生了變化:

<td width="50"><input type="radio" value="<?php echo $row_activities['activity_name']; ?>" name="activities" onclick="hi() " id="activities" /><?php echo " ".$row_activities["activity_name"]; ?></td>

到:(您需要動態生成輸入/單選按鈕上的唯一標識並將其發送給JS)

<?php $i = 1; ?>
<td width="50"><input type="radio" value="<?php echo $row_activities['activity_name']; ?>" name="<?php echo $row_activities['activity_name'].$i; ?>" id ="<?php echo $row_activities['activity_name'].$i; ?>" onclick="hi("<?php echo $row_activities['activity_name'].$i; ?> ")" /></td>
<?php $i++; ?>

在Javascript中更改為:

function hi(elementID) {
    var value = document.getElementById(elementID).value;
    alert(value);
}

代碼可能會有一些轉義錯誤,但是從邏輯上講,這應該使您知道如何執行此操作,希望對您有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM