簡體   English   中英

如何從Javascript中的alert()分配一個值給asp.net會話,Cookie,應用程序或其他,以將該值傳遞給asp.net中的下一個Web表單?

[英]How to assign a value from prompt() in Javascript to asp.net Session, Cookie, Application, or any to pass that value to the next web form in asp.net?

我在ASP.NET C#的第一個Web表單中有此腳本

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

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

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

只要我可以存儲該輸入值以將其傳遞到ASP.NET中的第二個Web表單,它就可以是Session,Cookie,Application或Context。 我需要在另一個Web表單中使用該輸入值。

上面的Session [“ value”]僅將字符串'+ input +'傳遞給下一個Web表單,而不是來自hint()框的輸入值。 任何想法? 謝謝。

您不能直接執行此操作,因為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();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM