gpt4 book ai didi

c# - 在日历日打开文本框单击

转载 作者:太空宇宙 更新时间:2023-11-03 15:34:25 28 4
gpt4 key购买 nike

我看过很多关于这个解决方案的帖子,但没有得到令人满意的答案我正在尝试简单地在 Calender 单元格上添加文本框 + 按钮并在单元格单击时打开它,

我可以在单击单元格时打开弹出窗口。但不能使用 CellSizeTextbox

   <asp:Calendar
ID="Calendar2"
runat="server"
NextPrevFormat="FullMonth"
SelectionMode="Day"
DayNameFormat="Full"
OnDayRender="Calendar1_DayRender"
VisibleDate="10/7/2008" OnSelectionChanged="Calendar2_SelectionChanged"
>

</asp:Calendar>

并调用 DayRender 事件

protected void Calendar1_DayRender(object sender, DayRenderEventArgs e)
{
Label lbl = new Label();

lbl.Text = e.Day.DayNumberText.ToString();
lbl.Attributes.Add("onclick", "JavaScript:void(window.open('Test/Default.aspx'))");
lbl.Style.Add("cursor", "pointer");

e.Cell.Controls.Add(lbl);
}

如何为 Textbox 执行此操作?

最佳答案

在你的日历事件中 protected void Calendar1_DayRender(object sender, DayRenderEventArgs e) { 按钮 btn = new Button();

        btn.Text = "+";
btn.Attributes.Add("onclick", "javascript:return btnClick(" + e.Day.DayNumberText + ")");
btn.Style.Add("cursor", "pointer");

TextBox txt = new TextBox();
txt.ID = e.Day.DayNumberText.ToString();
txt.Attributes.Add("style", "display:none;");
txt.Attributes.Add("onclick", "JavaScript:void(window.open('Test/Default.aspx'))");
e.Cell.Controls.Add(txt);
e.Cell.Controls.Add(btn);
}

在aspx文件中添加script标签

<script type="text/javascript">
function btnClick(id){
var txt = document.getElementById(id);
txt.attributes.removeNamedItem("style");
return false;
}
</script>

因为您使用过 javascript,所以我遵守您的兼容性。但我建议你使用 jquery。

关于c# - 在日历日打开文本框单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32346005/

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