javascript - JS在生成的ajax div中添加文本

标签 javascript jquery ajax addition

寻求一些帮助,了解如何将自定义文本值添加到 Ajax 生成的输入文本字段。但无法通过 id 或 class 获取元素,所有代码都不起作用。 尝试过检查常规价格是否为空的代码,然后应该将文本添加到字段中,但它不起作用。

<script type="text/javascript">
        if($("#_regular_price").length > 0) { 
            $("#snippet-editor-field-description").text('labas')
        };
</script>

也尝试过此代码来检查是否可以与警报一起使用,但事实并非如此。

<script type="text/javascript">

    $('#snippet-editor-field-description').click( function() { 
        alert('clicked'); 
    });

</script>

任何人都可以帮助如何获取元素并在摘录标记为黄色的位置之前添加自定义文本?

enter image description here

最佳答案

我看到的最大问题是,您的 jQuery 代码在 DOM 初始化时运行,但如果您正在查找的元素 (#snippet-editor-field-description) 不是“在初始页面加载时它永远不会找到它,因为 jQuery 只解析 DOM 一次。

要处理此 jQuery,请使用 .on()方法,它将查找动态添加到 DOM 中与该选择器匹配的任何新元素...

<script type="text/javascript">

    $(document).on('click','#snippet-editor-field-description', function() { 
        alert('clicked'); 
    });

</script>


至于将此元素添加到 DOM 时执行某些操作,不幸的是 jQuery 已弃用该功能( jquery detecting div of certain class has been added to DOM ),因此您可以手动实现,如链接的 SO 问题所示,或者...

  1. 轮询元素是否存在

setInterval(function (){
        var elem = $("#snippet-editor-field-description");
        if (elem) elem.append('labas');
},1000)

  • 使用插件(在本例中推荐)
  • jQuery Initialize

    $("#snippet-editor-field-description").initialize(function (){
       $(this).append('labas');
    });

    关于javascript - JS在生成的ajax div中添加文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54737550/

    相关文章:

    javascript - 视频标题字符串 "https://youtube.com/devicesupport"的 Youtube Api 响应

    javascript - 如何从mongo数据库中的字符串传递动态键值

    jquery - 在事件上调用处理函数

    ajax - AJAX CORS 的 Laravel CSRF token

    javascript - 我如何显示我的 table ?

    jquery - spring MVC 3 get请求从ie错误地返回代码304

    javascript - Phonegap 构建 cordova.js

    javascript - Django 或 Python 中的代理服务器

    javascript - 导航栏淡出并返回

    javascript - 如何获取列表元素的数据属性?