javascript - 如何更改单击的特定按钮的样式?

标签 javascript jquery html css

我有两个文件 在 xml.php 中,我正在显示来自 xml 文件的数据 还通过此代码显示带有 xml 数据的按钮

<input type="button" id="class" value="Select this Agent" onClick="Selected(this.id);">

所以页面上显示的按钮等同于xml中的元素。我想改变点击按钮的背景颜色。 这是我用于更改按钮样式的 javascript 代码

function Selected(ClickedId){
        alert(ClickedId);
        ClickedId.css('background-color', 'Green');
    }

整个代码是

<?php
                $xml = simplexml_load_file("agent.xml") or die("Error: Cannot create object");
                function processXML($node){
                    foreach($node->children() as $agent => $data){      
                        $agent= trim($agent);   
                            if($agent!="" && $agent=='image'){
                                ?><div class="inline"><?php 
                                echo "<br>";
                                echo "</br>";
                                echo "</br>";
                                echo '<img src='.$data.' >';?></div>
                                <!--<input type="button" value="Select this Agent">--><?php
                            }
                            elseif($agent == 'phone'){
                            ?><div class="btqn"><input type="button" id="class" value="Select this Agent" onClick="Selected(this.id);"></div> <?php

                            }
                            elseif($agent!=""){
                                ?> <div class="Table"><?php echo $data;?></div>
                                <?php
                                //echo "</br>";
                            }
                            else{
                                echo "<hr>";
                            } 
                            processXML($data);
                        }
                }  
                processXML($xml);
            ?>

所以请任何人告诉我我哪里错了。 任何建议都应该是可观的 请帮忙

最佳答案

尝试

改变这一行

<input type="button" id="class" value="Select this Agent" onClick="Selected(this.id);">

<input type="button" id="class" value="Select this Agent" onclick="Selected(this);"> 

注意这里不是传id而是传this引用

所以你可以使用

function Selected(ClickedId){
    alert(ClickedId);
    ClickedId.style.backgroundColor = 'green';
}

JQuery

$("#class").click(function(){

$(this).css("background-color","green");

})

See Fiddle Demo

关于javascript - 如何更改单击的特定按钮的样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21047472/

相关文章:

javascript - JavaScript test() 是否在正则表达式中保存状态?

javascript - AngularJS 在 Angular 指令中绑定(bind) click 相对于 ng-click 有什么好处?

php - 如何在 foreach 循环中回显消息一次

没有 Thead 标签的 HTML 表格标签

javascript - 当图像具有 css 作为绝对位置并且其父 div 具有 css 作为相对位置时,如何使图像可拖动?

javascript - 使用 Jquery 选择现有的 Google map 元素

javascript - 如何使用 Javascript 在外部点击时关闭 css 下拉菜单?

javascript - 我可以使用 jQuery 更改 CSS 类而不是匹配元素的 CSS 属性吗?

jquery - 在 Kendo Datepicker 中使日期不可选择或不可单击

html - 流体布局中的 CSS 定位和偏移