在onclick上更改按钮文本

时间:2015-01-30 13:03:26

标签: javascript button onclick innerhtml

我有这行代码

<?php 
$STRING .= '<a href="#" onclick="changeText(this)" class="btn btn-info btn-lg"></a>';
?>

<script>
function changeText(id) {
id.innerHTML = "Ooops!";
}
</script>

工作正常,按钮文字变为Oooops

我希望按钮文本更改为

的输出
 $data = get_user_meta( $authorID, 'cellno', true);

我改变了

的值
id.innerHTML = "Ooops!";

id.innerHTML = "$data = get_user_meta( $authorID, 'cellno', true)";

id.innerHTML = "$data";

但它不起作用:(,我做错了什么?

感谢所有人的努力

编辑: 这是我采用数据功能的地方

 $data = get_user_meta( $authorID, 'cellno', true);
        if(strlen($data) > 0){ 
        echo "<span><i class='fa fa-phone'></i> <a href='phone:".$data."' rel='nofollow' target='_blank'>Mobile</a> </span>"; 
        }

它会改变一件事吗?

$ data来自另一个文件:D

2 个答案:

答案 0 :(得分:1)

id.innerHTML = "<?php echo $data = get_user_meta( $authorID, 'cellno', true); ?>";

id.innerHTML = "<?php echo $data; ?>";

答案 1 :(得分:0)

这是你不应该实际做的事情,因为你有内联的javascript和php输出的<script>标签。你应该将你的javascript放在不同的文件中。

但是这里是如何解决你想要做的事情:

<?php 
$STRING .= '<a href="#" onclick="changeText(this)" class="btn btn-info btn-lg"></a>';
$data = get_user_meta( $authorID, 'cellno', true);
?>

<script>
function changeText(id) {
id.innerHTML = <?php echo $data;?>;
}
</script>