gpt4 book ai didi

c# - 使用c#从服务器端访问javascript中的动态变量

转载 作者:行者123 更新时间:2023-11-29 22:10:32 25 4
gpt4 key购买 nike

我正在尝试从服务器端 (c#) 访问 Javascript 中的变量。我已从服务器端将此变量声明为公共(public)变量:

public string elementSliderAppend;

并使用 javascript 访问:

<%=elementSliderAppend %>

到目前为止一切顺利,但是在我的 aspx 页面中更新面板刷新后变量似乎没有更新。

变量在后端更改一切正常,但更改不会在 Javascript 中发生。我已将对变量的访问放在更新面板中,因此它应该会刷新,但实际上并没有。

下面是aspx页面的代码

    <asp:Timer ID="Timer1" runat="server" OnTick="Timer1_Tick" Interval="10000">
</asp:Timer>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">

<Triggers>
<asp:Asyncpostbacktrigger controlid="Timer1"> </asp:Asyncpostbacktrigger>
</Triggers>

<ContentTemplate>
<div id="flexViewer" class="flexslider">
</div>
<script type="text/javascript">

function getImgHtml() {

return <%=elementSliderAppend %>;
}
</script>

</ContentTemplate>

</asp:UpdatePanel>

从下面的代码调用变量(也在 aspx 页面上)

     function pageLoad(sender, args) {


$("#flexViewer").html("<ul class=slides>" + getImgHtml() + "</ul>");

flexSliderRUN();


}

新代码

我现在已经在上面的更新面板中插入了下面的代码

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

我使用后面的代码设置隐藏字段值

        hiddimgHtml.value= elementSliderAppend;

在我的 javascript 文件中使用下面的代码来访问值

var value = $("#hiddimgHtml").val();

alert(value);

$("#flexViewer").html("<ul class=slides>" + value + "</ul>");

但是在刷新时我得到了一个非常讨厌的错误

POST http://:1562/FridayViewer.aspx 500(内部服务器错误)ScriptResource.axd?d=xz1-gVxgQeQi9AUxmqDjtx8455SyoL-b2LZdBEiJTo8-XZn2n4ZRBb…NYDXi9xlT_-BAcGHV0ZqGBzbItBzEvsjInrEIWh3G93x0XMte0bSN00lh0&t=6119e399:6073XHR 完成加载:“http://:1562/FridayViewer.aspx”。 ScriptResource.axd?d=xz1-gVxgQeQi9AUxmqDjtx8455SyoL-b2LZdBEiJTo8-XZn2n4ZRBb…NYDXi9xlT_-BAcGHV0ZqGBzbItBzEvsjInrEIWh3G93x0XMte0bSN00lh0&t=6119e399:6073未捕获的 Sys.WebForms.PageRequestManagerServerErrorException:Sys.WebForms.PageRequestManagerServerErrorException:在服务器上处理请求时发生未知错误。从服务器返回的状态码是:500 ScriptResource.axd?d=xz1-gVxgQeQi9AUxmqDjtx8455SyoL-b2LZdBEiJTo8-XZn2n4ZRBb…RNYDXi9xlT_-BAcGHV0ZqGBzbItBzEvsjInrEIWh3G93x0XMte037pSN00lh19&t

最佳答案

<%= %> 等同于 Response.Write,它不适用于 AJAX(UpdatePanel 是什么)。如果您需要在 UpdatePanel 中显示某些内容 - 将其分配给控件的属性(它可以是一些标准的 ASP.NET 控件,例如 Label 及其 Text 属性,甚至是具有 runat="server"及其 innerHTML 属性的 SPAN)

关于c# - 使用c#从服务器端访问javascript中的动态变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18294182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com