【问题标题】:Get hidden field value from javascript after php functionphp函数后从javascript获取隐藏字段值
【发布时间】:2017-02-09 11:34:07
【问题描述】:

我的代码有些问题。我的页面中有一个 Javascript 函数和一个填充隐藏字段的 PHP 函数。当我从 Javascript 读取隐藏字段时,读取的值不是当前值。好像没有刷新。 我需要帮助,请。每一个提示都非常感谢! 谢谢!

这是我的 Javascript 代码:

var username = document.getElementById('user').value;
checkUserName(username);

var opennextpage = document.getElementById('hidden_field_openpage').value;

if (opennextpage == 'YES'){
// open next page
}
else{
alert('Can't open page');
}

我通过AJAX调用PHP页面是这样的:

function checkUserName(username){
    var strURL  = "js/ax_checkusername.php?user="+ username; 
    var req = getXMLHTTP();

    if (req)
    {
        req.onreadystatechange = function()
        {
            if (req.readyState == 4)
            {
                // only if "OK"
                if (req.status == 200)
                {
                    document.getElementById('hidden_field_openpage').value = req.responseText;
                } 
                else 
                {
                    alert("There was a problem while using XMLHTTP:\n" + req.statusText);
                }
            }
        }
    }
    req.open("GET", strURL, true);
    req.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
    req.send(null);
}

【问题讨论】:

  • 所以你运行你的ajax调用然后你尝试运行你的javascript代码来获取改变的值?那是你想要做的吗?我看不出这些代码是如何连接的,也不清楚你的目标是什么。
  • 是的。我的目标是打开或不打开另一个页面来读取隐藏字段内的值。我使用 Ajax 填充隐藏字段,因为我需要在继续之前检查数据库。函数 checkUserName(username) 将 hidden_​​field_openpage 字段设为 YES 或 NO。然后我用 Javascript 读取它,但变量 opennextpage 的值不正确。

标签: javascript php ajax hidden-field


【解决方案1】:

你为什么不把两者结合起来,像这样:

function checkUserName(username){
    var strURL  = "js/ax_checkusername.php?user="+ username; 
    var req = getXMLHTTP();

    if (req)
    {
        req.onreadystatechange = function()
        {
            if (req.readyState == 4)
            {
                // only if "OK"
                if (req.status == 200)
                {
                   if (req.responseText == 'YES'){
// open next page here itself
}
else{
alert('Can\'t open page');
};
                } 
                else 
                {
                    alert("There was a problem while using XMLHTTP:\n" + req.statusText);
                }
            }
        }
    }
    req.open("GET", strURL, true);
    req.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
    req.send(null);
}

然后只需调用 checkUserName(username) ?

【讨论】:

  • 非常感谢您将我的帖子标记为您问题的答案!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-10
  • 1970-01-01
  • 2023-03-04
  • 1970-01-01
  • 2010-10-20
  • 2011-03-12
相关资源
最近更新 更多