我正在使用上面的控件(注意它是 ASP.NET 控件。我似乎看到很多人使用用 javascript 编写的类似名称的控件)来允许上传多个带有进度条的文件上传,拖放,等等。那部分一切正常,但我需要与文件一起返回两条数据。具体来说,用户输入的纬度和经度来自两个文本框。由于上传控件是异步的,文本框的内容不会被发回,所以我无法访问它们。似乎有一个我可以挂钩的属性,ContextKeys,它将数据发送回服务器,但它是一个静态字段,我不知道如何动态操作它。我已经尝试从文本框中挂钩 ontextchanged 事件并使用它们来设置上下文键。
有谁如何以编程方式设置 ContextKeys 属性,或以其他方式通过上传发送回数据?
这是代码:
.ASPX
<div style="float:left; width: 325px;">
<cc1:AjaxFileUpload ID="AjaxFileUpload1" runat="server" Width="325px"
onuploadcomplete="UploadComplete" ClientIDMode="Static" />
<cc1:DynamicPopulateExtender ID="AjaxFileUpload1_DynamicPopulateExtender"
runat="server" Enabled="True" PopulateTriggerControlID=""
TargetControlID="AjaxFileUpload1">
</cc1:DynamicPopulateExtender>
</div>
<div style="float:left">Latitude:
<asp:TextBox ID="tbUploaderLat" runat="server"
ontextchanged="tbUploaderLat_TextChanged" AutoPostBack="True"></asp:TextBox><br />
Longitude:
<asp:TextBox ID="tbUploaderLon" runat="server"
ontextchanged="tbUploaderLon_TextChanged" AutoPostBack="True"></asp:TextBox>
</div>
代码隐藏:
protected void UpdateLatLon() //this is called from the two events above
{
AjaxFileUpload1.ContextKeys = tbUploaderLat.Text + "|" + tbUploaderLon.Text;
}