0

我在服务器上运行了隐藏字段,并在我的 c# 代码中为其设置了值,当我单击一个按钮时,我希望将该值传输到我的 javascript 或 jquery ,并且该按钮也在更新面板中。所以不会发生回发。我通过 registerstartupscript 调用它但没有用,这是我的 C# 代码

using (MemoryStream ms = new MemoryStream())
{
     // Convert Image to byte[]
     image.Save(ms, ImageFormat.Png);
     byte[] imageBytes = ms.ToArray();

     // Convert byte[] to Base64 String
     base64String = "data:image/png;base64," + Convert.ToBase64String(imageBytes);
}

hidImgQR.Value = base64String;
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "myScript", getImgQR();", true);

在jQuery中

function getImgQR() 
{   
    alert($("input[id$=hidImgQR]").val());      
}   

我尝试了许多不同的方法,但它不起作用,可能是因为更新面板它没有采用最新值,但只有我分配的默认值..

4

3 回答 3

1

你也可以做这样的事情

$('#' + '<%= hidImgQR.ClientID %>').val();
于 2014-02-14T05:25:18.867 回答
0

你可以做 :

   alert($("<%= hidImgQR.ClientID %>").val());

呼叫按钮的点击内部pageLoad()

<script type="text/javascript"> 
function pageLoad() { 
    $("#yourbtn").click(function(){
    alert($("<%= hidImgQR.ClientID %>").val());
   });
  } 
</script>
于 2014-02-14T05:25:48.420 回答
0

有隐藏的领域控制

<asp:HiddenField id="fileId" runat="server" value='Nishant' />

将返回隐藏字段值的 JavaScript 代码

document.getElementById("<%= fileId.ClientID %>").value;

注意您还可以ClientIDMode="Static"将此属性用于您的控件并通过 id 本身 'fileId' ForInstance 检索它:

<asp:HiddenField id="fileId" runat="server" ClientIDMode="Static" value='Nishant' />

并使用 JavaScript 代码:

document.getElementById("fileId").value;

它也将返回 Nishant,但 Id 将是静态的。仅ClientIDMode="Static当您确定没有一个控件具有相同的 ID 时才使用。

可运行的 Asp.Net 代码 http://runnable.com/UjsLAmP-yM0VAADp/asp-net-how-to-get-server-control-value-in-javascript

于 2014-02-14T06:06:49.710 回答