基于IF语句通过PHP调用JS函数的问题

时间:2012-07-10 08:50:49

标签: php javascript html

我有一个基于网络的工具。有一个登录名,其中用户名,登录和授权存储在会话变量中。

有一个特定的页面,我有一个有多个按钮的表单,我希望根据用户授权级别禁用一个按钮。因此,如果授权为0(用户),则按钮被禁用,否则它被启用,因为我只有两个授权等级,0& 1.

我已经附上了我在下面所做的事情,对我而言看起来是对的,显然不是!

这是JQuery函数:

$(function disable(){
  $('#signBtn').attr('disabled', true);
});

这是PHP代码:

if($_SESSION['authorised'] == '0') 
{
    echo "<SCRIPT LANGUAGE='javascript'>disable();</SCRIPT>";
}

这是我的HTML代码:

   <input type=\"submit\" name=\"save\"  id = \"signBtn\" class = 'eBtnSubmit' value=\"Sign off by Chairperson\" />

如果有人在那里可以看到我的问题是什么我会非常感激...这是我最后一块拼图,我今天就提出这个问题(软件实习生)。

所以基本上如果等级为0则调用该函数。

此致 加里

3 个答案:

答案 0 :(得分:2)

没有保修,因为我没有所有代码

将静态JavaScript代码更改为此

var disableSingoff = function () {
    $('#signBtn').attr('disabled', true);
}

在原始代码中,您可以通过将disable()包装在DOM中来执行$()函数。

将PHP代码更改为此

if($_SESSION['authorised'] == '0') {
    echo "<script>$(function () { disableSignoff(); })</script>";
}

答案 1 :(得分:0)

是从php语句回显的<input type=\"submit\" name=\"save\" id = \"signBtn\" class = 'eBtnSubmit' value=\"Sign off by Chairperson\" />吗?如果没有,你可以摆脱所有的'\'。严格写html时没有必要。

答案 2 :(得分:0)

如果可能,可以更容易在HTML中设置值

if($_SESSION['authorised'] == '0'){
    echo '<button type="button" disabled="disabled">Click Me!</button>';
}else{
    echo '<button type="button">Click Me!</button>';
}

这可以在页面开始加载之前工作。

另一种选择是在加载函数上挂钩窗口。

window.onload =(function(){[...]}