Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从第一页启用第二页按钮_Javascript_Php_Html - Fatal编程技术网

Javascript 从第一页启用第二页按钮

Javascript 从第一页启用第二页按钮,javascript,php,html,Javascript,Php,Html,我想从page1.php启用或禁用page2.php中的按钮。当我从page1.php点击提交按钮时,它应该在page2.php中启用/禁用按钮,而不重定向到page2.php 这里我试图使用javascript将值从page1.php发送到page2.php。但无法获取数据 这是我试过的 page1.php <html> <head> <script type="text/javascript"> function enable(){ var enable

我想从
page1.php
启用或禁用
page2.php
中的按钮。当我从
page1.php
点击提交按钮时,它应该
page2.php
中启用/禁用
按钮,而不重定向到
page2.php

这里我试图使用javascript将值从
page1.php
发送到
page2.php
。但无法获取数据

这是我试过的

page1.php

<html>
<head>
<script type="text/javascript">
function enable(){

var enable="enable";
window.location = "page2.php?temp=" + enable;
alert(enable);
}

</script>
</head>
<body>

click button to ebable or disable

<input type="submit" name="submit" id="submit" value="enable"onclick="enable();"> 

</body>
</html>
<html>
<head>
<script type="text/javascript">
function enable(){

var enable="enable";
alert(enable);
window.location = "page2.php?temp=" + enable;
}

</script>
</head>
<body>
有人能建议如何得到它吗?

我想你可以设置

var x = document.getElementById("button").setAttribute("value", "enable");
这样,您就可以访问该特定变量并编辑其可启用性

使用javascript,您可以将按钮的启用值传递到第二个PHP页面。

在page2.PHP中 内部功能启用 在你得到温度值之后

if(temp){
    document.getElementById("myBtn").disabled = true;
} else {
    document.getElementById("myBtn").disabled = false;
}
试试这个:

注意:请阅读代码中的注释以了解更多解释

page1.phppage2.php将具有如下JS代码:

<script type="text/javascript">
function enable(){
    // Set enable/disable in session to be read on next page and this page on refresh
    var xhttp = new XMLHttpRequest();
    xhttp.open("GET", "setButtonStatus.php", true);
    xhttp.send();

    // set enable/disable value for current event
    if(this.value == 'enable'){
        this.value = 'disable';   
    } else {
        this.value = 'enable';
    }
}
</script>

函数启用(){
//将会话中的启用/禁用设置为在下一页和刷新时读取此页
var xhttp=newXMLHttpRequest();
open(“GET”,“setButtonStatus.php”,true);
xhttp.send();
//设置当前事件的启用/禁用值
如果(this.value=='enable'){
this.value='disable';
}否则{
this.value='enable';
}
}
setButtonStatus.php中

<?php
// setButtonStatus.php
// Set button status as enable in session if not already set or if disabled
if(isset($_SESSION['setButtonStatus']) && $_SESSION['setButtonStatus'] == 'enable'){
    $_SESSION['setButtonStatus'] = 'disable';
} else {
    $_SESSION['setButtonStatus'] = 'enable';
}
?>

page1.phpHTML代码

<input type="submit" name="submit" id="submit" value="<?php echo isset($_SESSION['setButtonStatus']) ? $_SESSION['setButtonStatus'] : 'enable' ; ?>" onclick="enable()"  >
<input type="submit" name="submit" id="submit" disabled="<?php echo isset($_SESSION['setButtonStatus']) && $_SESSION['setButtonStatus'] == 'disabled' ? true : false ; ?>" value="<?php echo isset($_SESSION['setButtonStatus']) ? $_SESSION['setButtonStatus'] : 'enable' ; ?>" onclick="enable()"  >
如下更改代码
page1.php

<html>
<head>
<script type="text/javascript">
function enable(){

var enable="enable";
alert(enable);
window.location = "page2.php?temp=" + enable;
}

</script>
</head>
<body>

函数启用(){
var enable=“enable”;
警报(启用);
window.location=“page2.php?temp=“+启用;
}
单击按钮以启用或禁用ebable

page2.php

<html>
<head>
</head>
<body>
<style>
#submit{
   display:none;
}
</style>
while page will load button is hide but if in url temp= enable then     buton will be visible
 <input type="button" value="button here" name="submit" id="submit"   <?php if($_GET['temp']=='enable'){ echo "style='display:block'";} ?>> 

 </body>
  </html>

#提交{
显示:无;
}
虽然页面将加载按钮是隐藏的,但如果在url temp=enable中,则buton将可见

在第2页中,您从url获取了数据?我想。。。您必须在页面加载时调用enable函数。Request.quesrysting[“temp”]将从第一页获取数据。但那不行,你的问题不太清楚。而且代码非常混乱。是否要禁用page1.php上的按钮,并且当访问该按钮时,应在page2.php上显示已禁用?您说过apge不应该重定向,但您正在使用window.location.Reuest.Querystring重定向。Querystring不是javascript中的本机函数。您是否正在使用任何库?对此表示抱歉。让我说清楚。当我单击page1.php上的按钮时,它应该会禁用page2.php上的按钮。我是否必须在page1.php中编写此内容?我可以问一下,为什么使用javascript而不是使用input标记使用get或post属性吗?当我从page1.php提交数据时,我不想重定向到page2.php。如果我使用get或post方法,它将重定向到page2.php,我不希望这样。但是,要提交或提交“请求”,您需要重定向到page2。google中有很多关于get和post方法php的教程。谢谢,它很管用。。但在page2.php中,当按钮处于禁用模式时,它仍然工作。这不应该发生。为此,您可以在输入字段中使用
disabled=true
。我已经编辑了代码。按钮两边都被禁用。应该是的,因为我们在两个页面中使用相同的输入字段。如果只想从
page2
禁用,请从
page1
中删除禁用属性。让我编辑一下答案。PS:edited.this正在运行,但正在重定向到page2.php。我不想重定向它。它应该只传递值。您能简要说明您到底想做什么吗?当我单击第1页的按钮时,它应该禁用第2页的按钮,而不重定向到第2页。