在.append()之后编辑DIV

时间:2015-10-11 13:56:24

标签: php jquery css append

我的算法:

  1. 我从php / SQL($.get( "read.php"...
  2. 获取DIV文本
  3. APPEND通过jQuery加载文本的contenteditable div
  4. 检查div值,如果文字中有错误div红色(分配班级,$(this).addClass("fill_red");
  5. 每次更改文本时 - 如果需要,请检查并指定/删除课程。
  6. 带有预加载文本的

    问题是: - 一切正常。 但是当我使用JS追加div时 - 检查功能不起作用。 我在网上搜索,也许on()方法可以帮助我。

    但是什么事件?

    应该是onloadonchange ..?

    (是的,我可以通过php生成div并解决问题,但我不想完全刷新)

    谢谢!

    代码的一部分:

    //texts load $(function() { $.get( "read.php", function( data ) { var ionka = data.split(' '); ionka.forEach(function(item, i, arr) { var app_text = "<div id=\"segm" + i + "\" contenteditable role=\"textbox\">" + item + "</div>"; $("#textarea").append(app_text); }); }); //checks var intRegex = new RegExp('^[0-9/\]{5}$'); $('#textarea div').each(function(i,elem) { if(!intRegex.test($(this).text())) { $(this).addClass("fill_red"); }else{ $(this).removeClass(); } }); // edit on change. Blur because of contenteditable var segm_array = []; $('#textarea div').each(function(i,elem) { $(this).blur(function() { if (segm_array[i]!=$(this).text()){ segm_array[i] = $(this).text(); if(!intRegex.test(segm_array[i])) { $(this).addClass("fill_red"); }else{ $(this).removeClass();
    } } }); });

1 个答案:

答案 0 :(得分:0)

你这里没有显示太多代码,但我的猜测是你在新数据加载到dom之前尝试添加类

$.get( "read.php" ).done(function( data ) {
    // addClass etc
});