如何通过EvaluateScriptAsync访问javascript里面的c#变量?

时间:2017-06-20 18:03:02

标签: javascript c#

我有一个c#变量,

    double amt = 12;

我有一段Javascript代码

    browser1.EvaluateScriptAsync("var x='<% =amt %>';document.querySelector('.amount').value=x;");

使用&lt;%amt%&gt;修改元素的值。我想要的是传递实际的c#变量的值'12'来传递。

当我做的时候

browser1.EvaluateScriptAsync("document.querySelector('.amount').value='12';");

它为元素的值赋予'12'。

现在如何让元素显示c#变量的值?

2 个答案:

答案 0 :(得分:0)

我认为你可以使用不同的方式。生成一个可见的可见的Label元素:false。你可以得到元素值。

就像那样:

 <asp:Label ID="lblHidden" runat="server"  Visible="false"></asp:Label>

 lblHidden.Text = "12";

和js

var myValue=$('#<% =lblHidden.ClientID %>').val();
browser1.EvaluateScriptAsync("var x=myValue;document.querySelector('.amount').value=x;");

答案 1 :(得分:0)

//directly insert the c# variable with "+"
browser1.EvaluateScriptAsync("document.querySelector('.amount').value='"+c#variable+"';");

我发现可以像上面的代码一样直接插入c#变量。