为了账号安全,请及时绑定邮箱和手机立即绑定

asp:使用ajax更新占位符内容

asp:使用ajax更新占位符内容

C#
FFIVE 2023-09-09 16:13:29
我有一个 asp:placeholder,它在文档的负载上保留文字文本。使用ajax,我需要更新文字。我挖掘了一些,但没有找到答案。这是我的 asmx 代码:<div class="modal fade in" id="yoklama" tabindex="-1" aria-hidden="true" style="display: none; padding-right: 17px;">    <div class="modal-dialog">        <div class="modal-content">            <div class="modal-header">                <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>                <h4 class="modal-title">Yoklama Kayıtları</h4>            </div>            <div class="modal-body">                <asp:PlaceHolder runat="server" ID="tbl_pdcr_main"></asp:PlaceHolder>            </div>            <div class="modal-footer">                <button type="button" class="btn dark btn-outline" data-dismiss="modal">Close</button>                <%--<button type="button" class="btn green">Save changes</button>--%>                <asp:HiddenField runat="server" ID="hdf_pdcr_reg" />            </div>        </div>    </div></div>这是我的 JavaScript 代码:$.ajax({    url: '/Staff/PDX.aspx/GetPDCRRecords',    method: 'post',    contentType: 'application/json',    data: '{r_id:' + yil + '}',    dataType: 'json',    success: function (data) {        $('#<%=lbl_pdcx_y_gec.ClientID%>').text(data.d.YGec);        $('#<%=lbl_pdcx_y_msiz.ClientID%>').text(data.d.YMaz);        $('#<%=lbl_pdcx_y_rap.ClientID%>').text(data.d.YRap);        $('#<%=lbl_pdcx_y_terk.ClientID%>').text(data.d.YTerk);        $('#<%=lbl_pdcx_y_diger.ClientID%>').text(data.d.YDiger);        $('#<%=tbl_pdcr_main.ClientID%>').replaceWith(data.d.PDCRLog);    },    error: function (error) {        alert(error);    }});感谢您的帮助。
查看完整描述

2 回答

?
慕码人2483693

TA贡献1860条经验 获得超9个赞

您的问题来自这样一个事实:PlaceHolder 不呈现任何 HTML,因此您的 id 搜索无法找到它。

您可以尝试使用面板。


查看完整回答
反对 回复 2023-09-09
?
阿晨1998

TA贡献2037条经验 获得超6个赞

如果您使用 ASP.NET Web 窗体框架,我建议不要依赖Ids,因为框架会向它们添加一些前缀到生成的客户端代码。您可以使用网络浏览器的开发人员工具检查我是否正确查看生成的代码。我建议使用该CssClass属性,但是,这样的方法不起作用:


<asp:PlaceHolder runat="server" ID="tbl_pdcr_main" CssClass="tbl-pdcr-main"></asp:PlaceHolder>

由于PlaceHolder服务器控件没有任何可见的输出,并且当我们在运行时添加控件时用作占位符,因此它不会生成 HTML div 等


我要做的就是向某些 HTML 元素添加一个额外的 CSS 类,它可以作为div示例(CssClass也应该有效,但对于不同的 asp 元素)


<div class="modal-body tbl-pdcr-main">

                ...

所以success你的ajax代码的一部分可以像下面这样工作:


success: function (data) {

   $('.tbl-pdcr-main').text(data.d.YGec);

},


查看完整回答
反对 回复 2023-09-09
  • 2 回答
  • 0 关注
  • 76 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信