如何从javascript到c#编码获取特定值?

时间:2012-09-08 00:51:20

标签: javascript html html5 javascript-events

嘿嘿嗨,所有在通过java脚本动态创建所有内容后,我想将一个特定的值传递到我的c#代码中...我不想要一切..我已经在代码中写了哪个变量我想要进入我的c#代码。

<script>      
    var test="i want this variable into my c#";
    var only for javascript="i don't want this to be travel when i click on submit button";

    var s = document.createElement("input"); //input element, Submit button
    s.setAttribute('type', "submit");
    s.setAttribute('value', "submit");
</script>

1 个答案:

答案 0 :(得分:0)

要将客户端变量&#34;转换为c#&#34;,您需要将其作为对运行c#的服务器的请求的一部分。这可以像将其附加到URL一样简单,也可以创建新字段,也可以填充现有字段并发送。

// a variable
var test = "a value to be sent to the server";

// put the value into a hidden field
document.getElementById("hdnValue").value = test;

// submit the form containing the hidden field
document.getElementById("form1").submit();

由于我们讨论的是c#,我认为服务器是ASP.Net,无论是Web表单还是MVC。对于MVC,请确保存在采用相应参数的控制器方法。对于Web表单,您可以包含<input type="hidden" runat="server" clientidmode="static" id="hdnValue" />。然后,该页面将在后面的代码中访问该值。

  

我想将一个特定值传递到我的c#代码中......我不知道   想要一切

向服务器发送单个值的另一种(可能更优雅)方法是使用AJAX异步POST值。我建议使用jQuery来简化这一过程,但也可以使用纯JavaScript来完成。

这是一个AJAX帖子的jQuery示例:

$.ajax({
    url: "http://yourserverurl/",
    type: "POST",
    data: { test: "a value to be sent to the server" },
    success: function(data){
        // an optional javascript function to call when the operation completes successfully
    }
});