ASP使用Ajax获取变量的值而不是引用

时间:2015-12-22 22:03:25

标签: javascript jquery ajax vbscript asp-classic

目前我已经坚持使用这段代码差不多两天了,现在我可以查看我所能做到的一切但是我尝试过的事情已经完全没有了,这可能部分是由于我错误地实施了别的什么,但我想我最后会问。我首先要说的是我在一个花哨的盒子里面。我想要 bIsError true 的值显示在console.log中,但window.alert显示它已设置为false。我注意到,一旦我运行代码,值就会改变。例如 - 如果用户名不正确,则返回 false ,然后将 bIsError 设置为 true 并显示错误消息。但是我只需要它返回 true 然后给出错误以便我的代码可以工作。无论如何,这是我的代码,感谢任何人都会有任何反馈,我真的很感激。

 if (typeof bFirstLoginPrep == 'undefined') {
        var bFirstLoginPrep = true;
    }

    if (typeof $ != 'undefined') $(function () {
        $(".ajaxformsubmit").unbind("click");
        $(".ajaxformsubmit").click(function (event) {
            setTimeout("lfSubmitForm()", 100);

            return false;
        });
    });

    function lfSubmitForm()
    {

        $form = $(".ajaxformsubmit").parents("form");
        response = $.ajax({
            url: $form.attr("action"),
            type: "POST",
            async: false,
            data: $form.serialize()
        }).responseText;

        var responseList = false;
        if (responseList == <%=LCase(bisError)%>) {

            lfLoginSuccess();

        } else {

            $("#fancybox-inner").html(response);
            $.fancybox.resize();

        }
    }

1 个答案:

答案 0 :(得分:0)

  • DinoMyte
  

&LT;%= bIsError%GT;为您提供实例服务器端变量的值。如果您通过Ajax更新它,它将无法工作,因为您可能正在对页面方法进行ajax调用,该方法被声明为静态方法,静态方法无法操作页面的实例成员。为了使其与ajax一起使用,您需要将bIsError作为ajax响应的一部分返回。

  

是的,正如DinoMyte所说。此外,您可以将blsError设置为此脚本中的会话变量,然后将其发送到浏览器,然后ajax调用的脚本可以将其读取到服务器端。