使用php更改html按钮文本

时间:2013-01-24 08:06:29

标签: php html button

我只是在学习php,有一件事我在网上搜索没有运气。我知道在客户端脚本(javascript)中,以下内容非常简单,但我想知道是否可以在php中使用。

我有一个html按钮元素,使用php代码可以更改其文本吗?点击每次按钮时要反复改变的东西。

3 个答案:

答案 0 :(得分:1)

PHP只能在最初呈现页面时操纵页面的源代码,因为它在页面发送到客户端之前在服务器上执行。如果按钮导致页面在每次单击时重新加载,您可以更改按钮标签。

例如,要在每次加载时为按钮提供随机数,您可以执行以下操作:

<button><?php echo rand(1,10); ?></button>

但这取决于导致页面重新加载的按钮。如果你想在没有页面重新加载的情况下这样做,那么JavaScript就是适合这项工作的工具。

答案 1 :(得分:1)

只需通过变量

定义按钮值即可
<?php 
$buttonName = "bla bla";
?>

<input type="submit" value="<?php echo $buttonName; ?>" />

<button><?php echo $buttonName ?></button>

然后你可以随心所欲地使用变量

答案 2 :(得分:0)

您可以在单击按钮时将按钮的当前文本发送到服务器并将其与新的随机文本进行比较,如果它们不相等,则将其回显到页面,如果是,则继续搜索非平等的文本。

你也可以用会话来做。将当前文本放在会话var中,并在提交中创建另一个文本,并将其与先前创建的会话var进行比较,并回显该页面。

<?php
session_start();
if (isset($_POST)) // check button submission - do it with any way you like
{
    while(1)
    {
        $new_rand = rand();
        if($new_rand != $_SESSION['currText'])
        {
           $curr_text = $new_rand;
           $_SESSION['currText'] = $curr_text;
           echo "<button>$curr_text</button>";
           break;
        }
    }

}
else // and here is the first page request, when no button is clicked
{
    $new_rand = rand();
    $_SESSION['curr_text'] = $new_rand;
    echo "<button>$new_rand</button>";
}

?>

有了这个,你每次按下按钮都会得到完全不同的文字;)

在这段代码和上面的场景中,我谈到了随机数,因为PHP rand()函数返回数字。如果你想要文本,你可以把你想要在页面中显示的所有文本放在一个数组中,然后使用rand(0, $max_index_of_the_array)得到随机文本 - 在数组中显示文本索引来自{{1}的文本}}