javascript - 日历 iframe 第一次显示在文本框的右侧,然后从那时起显示在文本框的下方

标签 javascript css asp.net detailsview

环境:
ASP.NET 网络表单
DetailsView控件
编辑模式

我有一个日期输入字段,当您在文本框内单击时,它会显示我的iframe 日历。这一切都在 detailsview 编辑模板元素 中。

第一次它在文本框的右侧显示日历(期望的结果),但从那时起,如果我隐藏然后再次显示它,它就会出现在文本框下方。为什么不一致?有什么想法吗?

$('.update-date-started').on('click',
    function () {
        var $tdElement = $(this);

        var $cal = $tdElement.find('#calFrame');

        if ($cal.length == 0) {
            var iframe = document.createElement("iframe");
            iframe.src = 'CalendarPopup.aspx?field=tbDateStarted';
            iframe.id = "calFrame"
            iframe.width = '275'
            iframe.height = '203'
            iframe.style = "position: absolute;"
            $tdElement.append(iframe);
        }

        $cal.toggle();
    });

最佳答案

看起来我只需要创建一个 span,将 iframe 添加到其中,然后将 span 添加到 td 元素,现在可以使用了!

关于javascript - 日历 iframe 第一次显示在文本框的右侧,然后从那时起显示在文本框的下方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49712584/

相关文章:

javascript - Uncaught ReferenceError : iphoneGallery is not defined

javascript - 在一个div上打开不同的php文件

asp.net - 单元测试 ASP.NET WebAPI Controller 的 POST Action

c# - 带 ASP.Net 的命名管道

javascript - Angular 2 : Check whether user's browser is compatible

javascript - jQuery 自动完成 ui - 真的很奇怪 1 个字母延迟吗?

javascript - 如何在 jQuery Submit() 之后使用 PHP 执行表单

javascript - Firefox 中的 Vue devtools 未检测到 Vue 3 应用程序

html - 无法使用 CSS 垂直对齐元素

asp.net - 获取服务器日期和时间