Javascript 将信息从JS传递到ASP服务器端
我一直试图以某种方式让我的javascript函数(我在aspx页面的head部分中有)在一个隐藏项中设置一个值,然后让服务器端(trusty'ol ASP)如何读取该数据,以便根据它是什么来做一些工作。我把我的整个页面包装在一个更新面板中,我的拖放问题基本上得到了解决。理想的情况是,一旦一个对象在drop区域中被删除,javascript代码块(我在JS中吸吮)将为一个隐藏字段分配一个值,然后让更新面板执行异步回发并刷新自身(这将从基于隐藏值运行的函数中提取数据)。这是我当前(损坏的)javascript部分的内容:Javascript 将信息从JS传递到ASP服务器端,javascript,asp.net,ajax,postback,Javascript,Asp.net,Ajax,Postback,我一直试图以某种方式让我的javascript函数(我在aspx页面的head部分中有)在一个隐藏项中设置一个值,然后让服务器端(trusty'ol ASP)如何读取该数据,以便根据它是什么来做一些工作。我把我的整个页面包装在一个更新面板中,我的拖放问题基本上得到了解决。理想的情况是,一旦一个对象在drop区域中被删除,javascript代码块(我在JS中吸吮)将为一个隐藏字段分配一个值,然后让更新面板执行异步回发并刷新自身(这将从基于隐藏值运行的函数中提取数据)。这是我当前(损坏的)java
<script type="text/javascript">
$(document).ready(function() {
doReady();
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(function(s, e) {
doReady();
});
});
$(文档).ready(函数(){
多雷迪();
var prm=Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(函数(s,e){
多雷迪();
});
});
所有这些都使得JQuery在回发后不会崩溃
function doReady() {
$('.drag').draggable({ revert: true, helper: 'clone' });
$('.drop').droppable({
tolerance: "touch", // Here should be a string
drop: function() {
$('#myHidden').val('Testy test test');
__doPostBack('<%= HiddenButton.UniqueID %>', '');
alert(#myHidden.val);
}
});
} // End of do ready
</script>
函数doReady(){
$('.drag').draggable({revert:true,helper:'clone'});
$('.drop')。可拖放({
容差:“touch”//这里应该是一个字符串
drop:function(){
$('#myHidden').val('Testy test');
__doPostBack('','');
警报(#myHidden.val);
}
});
}//do ready结束
这里是相关的ASPX部分,有神秘的“myHidden”东西
我的javascript部分是否做错了什么,或者我对这个fubar的整个概念是否都错了
谢谢!
Bill如果您希望将隐藏的输入发回,则需要提供名称和id。只有带有名称的输入才会与已发布的表单一起发送。您可能希望将其设置为asp:HiddenField,以便在服务器端轻松检索其值,尽管您也可以从Request.Form集合中获取该值
<asp:HiddenField runat="server" id="myHidden" />
将您的javascript更改为:
drop: function() {
$('[id$="myHidden"]').val('Testy test test');
__doPostBack('<%= HiddenButton.UniqueID %>', '');
alert($('[id$="myHidden"]').val());
}
drop:function(){
$('[id$=“myHidden”]').val('Testy test');
__doPostBack('','');
警报($('[id$=“myHidden”]')。val();
}
为什么不使用jQuery.post()在drop函数中发送数据,然后使用回调函数对ASP返回的内容执行任何操作,而不是将值扑通到输入字段中?这是有原因的,因为我不知道该怎么做!您是否有一个很好的文档/教程链接,或者我可以从中学习的代码片段?这听起来像是我目前正在做的一个简单得多的方法。使用asp:HiddenField非常有效!我学会了不要尝试给它起名字,因为ID就足够了。我调用一个函数(返回到的函数)并使用MyHidden的value.tostring,然后它就正常工作了!我非常高兴:我仍然对JQuery post方法感兴趣
drop: function() {
$('[id$="myHidden"]').val('Testy test test');
__doPostBack('<%= HiddenButton.UniqueID %>', '');
alert($('[id$="myHidden"]').val());
}