2013-02-14 112 views
0

我是新来的ASP,我用我的ascx控件来填充。我有一个控制Upload.ascx用下面的初始化代码访问来自代码隐藏的JavaScript动态属性

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="Uploader.ascx.cs" Inherits="Uploader" %> 
<script type="text/javascript" > 
$(function() 
{ 
    var guid = GUID();//GUID() - js function which generates GUID 
    $('#' + '<%= OuterId %>').attr('guid', guid); 
} 
</script> 
<div class="buttonNoHover" runat="server" id="current">Upload</div> 

和CS初始化代码(一部分)

protected void Page_Load(object sender, EventArgs e) 
{ 
    current.ID = this.ID; 
} 

我的控件声明如下所示

<my:Uploader ID="upload" OuterId="upload" ClientIDMode="Static" runat="server" /> 

在我的JS我可以访问属性$('#上传')。attr('guid'),它给出了正确的价值。但是当我提交表单时,我的upload.Attributes [“guid”]在代码隐藏中变为空。我怎样才能访问它,我做错了什么?

回答

2

你不能像这样做:

有两种方式:

从服务器和存储的一些文字传递的GUID和使用JQuery等

OR

访问字面

创建服务器端隐藏字段并分配值。

<asp:HiddenField runat="server" ID="hidden" /> 

$('[id$=hidden]').val(guid); 

在提交访问隐藏字段

+0

哦,感谢的人,它解决了我的问题))有什么办法通过ID访问隐藏的控制,或者我要检查我的Request.Params得到guid值? – Alex 2013-02-14 08:54:21

+0

@voo欢迎来到SO – Moons 2013-02-14 08:57:22

相关问题