解决 使用c#更新div

molari51.

成员
加入
1月20日,2021年
消息
10
编程经验
3-5
非常感谢您在IIS中使用XML和虚拟文件夹的先前线程

如果我可能会有2个问题

我在我的dotnet webform中有以下内容 - HTML
HTML:
        <div id="MediaPlayer">
            <table>
                <tr>        
            <td><img alt="spacer" src="graphics/spacer.gif" style="width: 30px; height: 5px" /></td>
            <td class="vtop"><div id="MyTest" runat="server" class="player" data-wimpyPlayer data-skin="wimpy_7.81/wimpy.skins/cool-eq-Robs.tsv" data-startUpText="Welcome" data-media="MusicFavourites/SimpleMinds.xml"></div>       </td>
        </tr>
    </table>
使用c#我正在尝试修改part - /simpleminds.xml" to /All.xml"

已写入以下内容以将DIV作为测试中的文本框中检索
C#:
        System.IO.StringWriter sw = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter h = new System.Web.UI.HtmlTextWriter(sw);
        MyTest.RenderControl(h);
        txtMsg.Text = sw.GetStringBuilder().ToString();
有没有办法使用C#更新上面的HTML DIV语句

2.另外一个异常。我必须将上面的代码放在UpdatePanel之外,因为当我在页面上刷新播放器中的一个元素完全消失时,有没有办法在不执行所有其他代码的情况下重新加载播放器

非常感谢您的帮助
 
最后编辑了主持人:

跳伞运动员

工作人员
加入
2019年4月6日
消息
2,892
地点
切萨皮克,va.
编程经验
10+
Presumably you are asking about WebForms and not Blazor. In WebForms, you cannot update a <div> because the C# code is running on the server, but the <div> is being displayed on the web browser running on the client. The only way to do the update, is to send new data to the client. That's basically what the UpdatePanel does, it keeps on getting new data from the server to present on the client.

Anyway, stepping away from that meta question about page lifetimes and getting into the weeds with your specific question, is that <div> in your OP hardcoded? Shouldn't you be using something like:
C#:
<div id="MyTest"
     runat="server"
     class="player"
     data-wimpyPlayer data-skin="wimpy_7.81/wimpy.skins/cool-eq-Robs.tsv"
     data-startUpText="Welcome"
     data-media="<%= MyPlaylistVariable %>">
</div>
where myplayListvariable. contains the string that you want to send to the client.
 

molari51.

成员
加入
1月20日,2021年
消息
10
编程经验
3-5
Presumably you are asking about WebForms and not Blazor. In WebForms, you cannot update a <div> because the C# code is running on the server, but the <div> is being displayed on the web browser running on the client. The only way to do the update, is to send new data to the client. That's basically what the UpdatePanel does, it keeps on getting new data from the server to present on the client.

Anyway, stepping away from that meta question about page lifetimes and getting into the weeds with your specific question, is that <div> in your OP hardcoded? Shouldn't you be using something like:
C#:
<div id="MyTest"
     runat="server"
     class="player"
     data-wimpyPlayer data-skin="wimpy_7.81/wimpy.skins/cool-eq-Robs.tsv"
     data-startUpText="Welcome"
     data-media="<%= MyPlaylistVariable %>">
</div>
where myplayListvariable. contains the string that you want to send to the client.
晚上
It is a webform, how would I pass the string myplayListvariable. to the client

非常感谢[/ icode]
 
最后编辑了主持人:

跳伞运动员

工作人员
加入
2019年4月6日
消息
2,892
地点
切萨皮克,va.
编程经验
10+
无论在下次获取服务器时,将返回变量的值将返回给客户端。

更有趣的问题是您如何让客户端自动请求页面或页面的一部分。对于您使用UpdatePanel的一部分页面,但似乎您有限您的使用情况。
 

molari51.

成员
加入
1月20日,2021年
消息
10
编程经验
3-5
无论在下次获取服务器时,将返回变量的值将返回给客户端。

更有趣的问题是您如何让客户端自动请求页面或页面的一部分。对于您使用UpdatePanel的一部分页面,但似乎您有限您的使用情况。
这些步骤如下

1.当页面加载时,它会自动检索GridView中的所有可用MP3
2.您从下拉列表中选择最喜欢的文件夹以分配曲目,从数据库中检索它们
3.在步骤1的GridView中,选择相应的轨道并按所需网格中的按钮,将路径保存到SQL Server数据库
4.按下按钮视图和写入XML - 这加载了在第3步刷新GridView中的收藏夹列表中包含的曲目,然后通过网格构建XML格式迭代

我当时希望有另一个ASP按钮,以便按下它将采用Favourits下拉列表的文本值,并将其用作值 myplayListvariable.,该页面将刷新将新XML值加载到变量中

我所拥有的另一个问题(如上所述)是所有HTML代码都包含在UpdatePanel中,这一切都完美。如此帖子顶部概述的玩家包含在UpdatePanel之外,它是一个免费软件播放器,当播放器在UpdatePanel内部时,当ASP事件执行播放器时,当我刷新页面时,它重新出现但所有ASP元素已重置

希望上述帮助
 

跳伞运动员

工作人员
加入
2019年4月6日
消息
2,892
地点
切萨皮克,va.
编程经验
10+
抱歉。我几乎是遗弃的Web形式,就像我放弃实体框架的方式一样。当我曾经使用WebForms工作时,它是笨重的,因为地狱,尝试使桌面编程范例适合Web客户端 - 服务器范例。希望有人在WebForms中投入更多的人可以帮助。我现在可以告诉你,看起来你在你的旅程中跳过几步,以学习webforms,现在你似乎缺少一些基本面,如如何用它中的变量渲染一个页面,或者喜欢asp .NET页面寿命工作。
 

molari51.

成员
加入
1月20日,2021年
消息
10
编程经验
3-5
拖网后,网和阅读几本书提出了以下内容

以为我会在jquery上去,这是我的第一次尝试,写了以下内容,

<script>
函数changeplylist()
{
var selected= "MusicFavourites/"+ $(ddlfavfolders).val();
$("#MyTest").attr("data-media",selected)
};
</script>

从ASP按钮添加了以下C#代码,以保存XML文件
脚本manager.registretArtupscript(this.page,this.gettype(),"script", "ChangePlaylist();", true);
 
最佳 底部