2

我正在尝试访问脚本变量pic并将其分配给 C# 中的另一个变量,例如 hidden field hdn。出于某种原因,下面的脚本也被放置在相同的代码后面。我可以直接访问这里的隐藏字段。但是如何从脚本变量中为其赋值呢?

 <script type=\"text/javascript\">
   $(document).ready(function() {
     $.get('<%=completeURL%>', 
     function(d) {
       $(d).find('entry').each(function(){
         var $entry = $(this);
         var pic = $entry.find('content').attr('src');
         alert(pic);
       });
     });
   });
 </script>
4

3 回答 3

1

创建一个隐藏字段,然后从 javascript 设置值

 <asp:hiddenfield id="hf_MyValue"
          value="whatever" 
          runat="server"/>

如何在javascript中设置值

//get value from hidden filed
var test= document.getElementById('<%= hf_MyValue.ClientID %>');
//set value in hidden filed
document.getElementById('<%= hfBrand.ClientID %>').value = "True";
于 2013-09-24T09:37:57.980 回答
1

无法通过 javascript 分配 C# 变量。您必须将该值从客户端(运行 JavaScript 的地方)发送到服务器,并分配它。这就是所谓的 ajax 请求,只要用谷歌搜索它,你就会发现数百万个很好的例子来说明如何实现它。

于 2013-09-24T09:34:49.013 回答
0

像这样创建一个隐藏变量,

<input type="hidden" id="hdnVariable" runat="server" />

现在试试这段代码

<script type=\"text/javascript\">
   $(document).ready(function() {
     $.get('<%=completeURL%>', 
     function(d) {
       $(d).find('entry').each(function(){
         var $entry = $(this);
         var pic = $entry.find('content').attr('src');
         //assign value to server side hidden variable
         $("#<%=hdnVariable.ClientID%>").val(pic);
       });
     });
   });
 </script>

现在您可以像这样从 C# 代码访问这个隐藏字段

string pic=hdnVariable.Value;
于 2013-09-24T09:42:09.230 回答