gpt4 book ai didi

c# - 动态生成的 div InnerHtml 渲染与静态编码时非常不同

转载 作者:行者123 更新时间:2023-11-28 07:15:14 25 4
gpt4 key购买 nike

我在带有 with 和 UpdatePanel 的表单中有以下 html 标记。这段代码在静态编码时完全按照我想要的方式呈现/显示。但是,当我在 c# 代码隐藏中使用 while 循环将所有“docbox”元素的代码动态连接到一个字符串中,然后将该字符串设置为 div“bookshelf_items”的 InnerHtml 时,它呈现/显示的方式非常不同。似乎在生成第一个 .docbox div 之后,随后的 docbox div 就在其中。另一件奇怪的事情是,在“bookshelf_items”之后应该显示的所有内容都消失了。

编辑

 <div class="bookshelf_items" id="bookshelf_items" runat="server">

<div class='docbox'>
<div class='doc' contenteditable='true' id='doc_50'>
<div class='doc_title'>TEST TITLE</div>
<div class='doc_txt'>TEST TEXT</div>
</div>
<div class='doc_date'>TEST DATE</div>
<div class='doc_del' ID='del_50' runat='server' />
<div class='doc_getlyt' ID='getlyt_50' runat='server' />
</div>

</div>

编辑 - 移除 CSS编辑 - 删除了 C# 代码隐藏

最佳答案

试试这个

        private void GetUserDocs(string user_id)
{

using (SqlConnection connection = new SqlConnection(conn))
using (SqlCommand cmd = new SqlCommand("SELECT id, title, alias, dt from dbo.user_works WHERE user_id = @user_id", connection))
{
cmd.Parameters.AddWithValue("user_id", user_id);
connection.Open();
using (var reader = cmd.ExecuteReader())
{

// Check if the reader has any rows at all before starting to read.
if (reader.HasRows)
{
string doclist_html = "<div class=\"bookshelf_items\" id=\"bookshelf_items\" runat=\"server\">";
while (reader.Read())
{
string doc_id = reader["id"].ToString().Trim();
string title = reader["title"].ToString().Trim();
string alias = reader["alias"].ToString().Trim();
string dt = reader["dt"].ToString().Trim();
string date = DateTime.Parse(dt).ToShortDateString();

//build doc html
doclist_html = doclist_html + String.Format(
"<div class='docbox'>" +
"<div class='doc' contenteditable='true' id='doc_x{0}'>" +
"<div class='doc_title'>{1}" +
"</div>" +
"<div class='doc_txt'>{2}" +
"</div>" +
"</div>" +
"<div class='doc_date'>{3}</div>" +
"<div class='doc_del' ID='del_{0}' runat='server' />" +
"<div class='doc_getlyt' ID='getlyt_{0}' runat='server' />" +
"</div>",
doc_id, title, alias, date);


}
doclist_html += "</div>";
bookshelf_items.InnerHtml = doclist_html;


string testhtml = bookshelf_items.InnerHtml;
}
else
{
//username not found
lbl_error.Text = ">>Failed to get documents<<";

}
}
}
}​

关于c# - 动态生成的 div InnerHtml 渲染与静态编码时非常不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32389145/

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