首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将javascript布尔结果发送回服务器

如何将javascript布尔结果发送回服务器
EN

Stack Overflow用户
提问于 2017-02-28 19:58:22
回答 1查看 195关注 0票数 0

在定制购物车的html页面上,我需要能够向我们的服务器发送一个post,告诉它是否启用了cookie。

我在页面上有适当的javascript来检测cookies的启用/禁用(通过navigator.cookieEnabled),如果检测到cookies启用,它什么也不做,如果它们没有启用,它会发布一条消息。我需要做的不仅仅是发布一条消息。

我不希望用户能够点击购买按钮,其html (连同购物车本身,以及购物车包含的所有项目)是由我们的服务器上的数据库软件生成的(使用关联的cookie ID在网站上生成购物车)。

我不知道如何从javascript中获取布尔值(enabled/true或disabled/false),并将该信息(true或false)发送回我们的服务器,在那里我可以检测到来自网站的传入连接。

对于JS来说,我是一个非常新手,所以不要对我太苛刻!

提前感谢您提供给我的任何输入,或者给我指个方向…

以下是基于收到的答案的后续内容:

代码语言:javascript
复制
On the cart page (which is displayed when user hits a “Buy This” button elsewhere on the site, to purchase something) is this JS:

<div id="demo"></div>
<script>
    var xyz = "";
    xyz = "Cookies Enabled: " + navigator.cookieEnabled;
    document.getElementById("demo").innerHTML = xyz;
    if (navigator.cookieEnabled) {
        xyz = "";
    } else { 
        xyz = "Cookies seem to be disabled in your browser.";
    }
    document.getElementById("demo").innerHTML = xyz;
</script>

因此,在JS中生成了一个true/false值。然后,为了构建购物车,当html页面加载时,我通过这个(这是与上面的JS相同页面上的html代码的一部分)向我们的web服务器发送一个调用:

"4DHTML vCart“(这包含在注释标记中,尽管它不是注释。在这个编辑中,我不能把它放在注释标签中,因为它被忽略了)。在我们的Web服务器软件中,它被称为“On web Connection”的方法获取,该软件是用comment编写的(它基本上是嵌入到html中的4D代码,注释标签是协议的一部分)。

然后,4D代码构建购物车,并将其(购物车页面)作为html文件发送回网站。

所以…当调用被OWC方法拾取时,我可以检测来自html购物车页面的传入变量,这些变量以数组的形式传入,并可以解析这些值。问题是,我想要的布尔值在JS中,我不知道如何在JS之外表示它们。

感谢您在这方面的时间和考虑。

EN

回答 1

Stack Overflow用户

发布于 2017-03-01 05:58:23

听起来您似乎是在尝试向服务器回发AJAX post。尝试如下所示:

代码语言:javascript
复制
<script>
   var request = new XMLHttpRequest();
   request.onreadystatechange = function() {
      if(request.readyState === XMLHttpRequest.DONE) {
        if(request.status === 200) { 
          //PERFORM ANY ADDITIONAL ACTIONS AFTER A SUCCESSFUL POST HERE...
        } else {
          alert('An error occurred. Please try again.');
        }
      }
    }

    var xyz = "";
    xyz = "Cookies Enabled: " + navigator.cookieEnabled;
    document.getElementById("demo").innerHTML = xyz;
    if (navigator.cookieEnabled) {
        xyz = "";
        request.open('POST', 'http://yourpostbackurl.com/enabled');
        request.send();
    } else { 
        request.open('POST', 'http://yourpostbackurl.com/disabled');
        request.send();
        xyz = "Cookies seem to be disabled in your browser.";
    }
    document.getElementById("demo").innerHTML = xyz;
</script>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42508194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档