javascript - 如何将 JavaScript 中的提示()中的值分配给 ASP.NET session 、Cookie、应用程序或任何将该值传递到 ASP.NET 中的下一个 Web 表单?

标签 javascript c# asp.net

我在 ASP.NET C# 的第一个 Web 表单中有此脚本

<script type="text/javascript">    
   function passJsValueFromPromptBoxToAspWebForm() {

       var input = prompt('Enter a value here: ');

       '<%Session["value"] = "' + input + '"; %>';
   }
</script>

它可以是 session 、Cookie、应用程序或上下文,只要我可以存储该输入值并将其传递到 ASP.NET 中的第二个 Web 表单即可。我需要在另一个 Web 表单中使用该输入值。

上面的 Session["value"] 只将字符串 ' + input + ' 传递到下一个 Web 表单,而不是 Prompt() 框中的输入值。任何想法?谢谢。

最佳答案

您不能直接执行此操作,因为 javascript 是客户端,您无法直接从 javascript 访问服务器代码,您需要执行 AJAX 调用来设置值,如下所示

JS代码

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"> </script> <script type="text/javascript">
    function passJsValueFromPromptBoxToAspWebForm() {

  var input =  var input = prompt('Enter a value here: ');

        $.ajax({
            type: 'POST',
            url: 'YOURFormNAME.aspx/SetSessionValue',
            data: '{ val:input  }',
            contentType: 'application/json; charset=utf-8',
            dataType: 'json',
            success: function (newValue) {
                alert("Value set in session is " + newValue);
            }
        });
    }

</script>

在 aspx.cs 中编写以下方法

[WebMethod]
public static string SetSessionValue(string val)
{
    HttpContext.Current.Session["value"] = val;
    return HttpContext.Current.Session["value"].ToString();
}

关于javascript - 如何将 JavaScript 中的提示()中的值分配给 ASP.NET session 、Cookie、应用程序或任何将该值传递到 ASP.NET 中的下一个 Web 表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26942090/

相关文章:

c# - 运行 JavaScript setInterval 的网站在 ~1 天后开始失败

c# "=="运算符 : compiler behaviour with different structs

c# - FindAsync 很慢,但是延迟加载很快

asp.net - 如何解决 url 重写错误?

ASP.NET MVC 5 - RazorGenerator 与发布期间的发布预编译

javascript - Hangfire 完成后如何发出通知

javascript - 使用 CoffeeScript 为选择框选择默认值

javascript - 数据 URI 在 CSS 中不起作用

javascript - 如何从 forEach 方法中删除不需要的计数增量?

javascript - 用于转换网页上显示的时间时区的用户脚本?