首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >我想要更改按钮的颜色和文本点击,它不应该改变时,页面被刷新。

我想要更改按钮的颜色和文本点击,它不应该改变时,页面被刷新。
EN

Stack Overflow用户
提问于 2016-02-20 02:26:32
回答 1查看 887关注 0票数 0

我想在点击时改变按钮的颜色和文本,当页面是refreshed.Here时,当点击设置状态时,它不应该更改。当我再次点击它时,它将文本更改为已确认,并将颜色更改为绿色,当我再次单击它时,它会将颜色更改为红色,文本更改为pending.Now,它应该将颜色更改为绿色,文本应该更改为已确认,这里的颜色和文本都不是changed.And,这在页面刷新时应该保持不变。以下是代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<input type="submit" id="<?php echo $orderQuery['id'];?>" value="set status" onclick="setColor('<?php echo $orderQuery['id'];?>')"; />
<script>

var count = 1;

function setColor(btn) {
var property = document.getElementById(btn);

if (count == 0) {property.style.backgroundColor = "#ff0000"
 if (property.value=="confirmed") property.value = "pending";
 }
 else {property.style.backgroundColor = "#7FFF00"
 count = 0;
if (property.value=="set status") property.value = "confirmed";
}

    }
</script>
EN

回答 1

Stack Overflow用户

发布于 2016-02-20 02:43:37

HTTP是无状态协议,我们不能在HTTP调用之间维护状态以获得更多信息look at this answer

因此,您必须通过其他机制保存下一次所需的数据(在您的情况下是按钮颜色),如查询字符串、Cookies或Session

查询字符串

您可以使用查询字符串来携带想要保存的信息,如

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
www.example.com?btnColor=blue

当然,在加载页面时,您可以使用php设置颜色,如下所示。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//pseudo code
if(isset($_GET['btnColor']) // for query string
 echo  '<button style="background:'.$_GET['btnColor'].'">'
if(isset($_COOKIE['btnColor']) // for cookie
 echo  '<button style="background:'.$_COOKIE['btnColor'].'">'
if(isset($_SESSION['btnColor']) // for Session based storage
 echo  '<button style="background:'.$_SESSION['btnColor'].'">'

COOKIES和会话

您还可以使用cookie保存btn颜色。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
setcookie("color", "red", time() + (86400 * 30), "/"); // 86400 = 1 day
// and you can retrieve the cookie value from


 echo $_COOKIE['color'] // prints red

会话可以以下列方式使用

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//to set the session
$_SESSION['color'] = "red";
// to retrive the data
echo $_SESSION['color'];

cookie和会话的主要优点是它们保存了一段时间内的信息,以获得更多信息和详细信息,请参阅php.net文档。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35521918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文