我正在尝试使用以下行为构建PHP网页:
1-客户端访问网页(包含一些按钮);
2-加载网页时,PHP脚本会打开存储在服务器上的文件,并根据此文件中的信息启用/禁用某些按钮,以便客户端可以看到正确的网页启用或禁用按钮。
要启用/禁用按钮,我知道我可以使用javascript,而在服务器上读取文件我使用PHP如上所述。
如何将两者放在一起?或者我应该使用相当于以下javascript行的PHP代码:
<script>document.getElementById("button1").disabled = true;</script>
起初我认为在PHP代码中插入这一行是解决方案,但后来我发现这显然无法正常工作。
感谢您的帮助!
如果我在网页的head部分添加以下javascript函数是否正确?
<script>
function enableButtons() {
<?php
if($state=="state1") {
echo 'document.getElementById("button1").disabled = true;';
}
else if($state=="state2") {
echo 'document.getElementById("button2").disabled = true;';
}
?>
}
</script>
使用
加载页面时调用enableButtons()函数<body onload="enableButtons()">
上面的php代码只是一个例子,状态和按钮的数量更高,这就是我想使用这个解决方案的原因。
答案 0 :(得分:1)
常见的做法是让php读取设置文件,并在将输出发送到用户浏览器之前回显按钮上的“disabled”属性。您可以在here获取有关该属性的更多信息。 您不需要javascript。
做这样的事情:
<button type="button" <?php if($state === 'state1') echo 'disabled'; ?>>Button text</button>
答案 1 :(得分:0)
通常您向客户端发送已禁用的按钮并使用js来响应发送页面后发生的任何事件,例如选择组合框值。
您可以使用if
句子省略代码,或使用css隐藏它们。第一种方法是首选。
答案 2 :(得分:0)
脚本
<script>
function isValid(f){
if(f.test.value==''){
alert('please enter name');
return false;
}else{
$(".bbutton").html("Processing please wait");
return true;
}
}
</script>
HTML
<form method="post" onsubmit="return isValid(this);">
<input type="hidden" name="te">
<input type="text" name="test">
<div class="bbutton">
<input type="submit" value="send">
</div>
</form>
当您提交表单时,它会自动隐藏提交按钮以避免反复按,并且您可以将其重定向到其他页面。可能这个想法很有用。