为什么不是';循环递增的JavaScript?

为什么不是';循环递增的JavaScript?,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试将替换为1。2.3.分别地我设法将更改为一个数字,但该数字是0。循环不想工作。老实说,这种方法可能是不可能的 如果您愿意,请看一看。 这是我的函数(){…}: function doIt(){ var input = document.getElementById("input"); var li = /<li>/; // match opening li var liB = /<\/li>/; // match

我正在尝试将
  • 替换为1。2.3.分别地我设法将
  • 更改为一个数字,但该数字是
    0
    。循环不想工作。老实说,这种方法可能是不可能的

    如果您愿意,请看一看。

    这是我的
    函数(){…}

    function doIt(){
    
            var input = document.getElementById("input");
            var li = /<li>/; // match opening li
            var liB = /<\/li>/; // match closing li
            var numberOfItems = input.value.match(li).length; // number of lis that occur
    
    
            for(var i = 0; i < numberOfItems; i++) {
                insertNumber(i); // execute insertNumber function w/ parameter of incremented i 
            }
    
            function insertNumber(number){
                input.value = input.value.replace(li, number + "." + " ").replace(liB, "");
            }
    
    
        }
    
    函数doIt(){
    var输入=document.getElementById(“输入”);
    var li=//
  • //;//匹配开始li var liB=//;//匹配结束li var numberOfItems=input.value.match(li).length;//发生的lis数 对于(变量i=0;i
  • 我知道
    insertNumber(){…}
    函数不是必需的。

    将HTML文本区域内容转换为DOM元素,jQuery可以通过这种方式操作和管理它们:

    function doIt() {
        var $domElements = $.parseHTML( $('#input').val().trim() ),
            output = [],
            i = 1;
        $.each($domElements, function(index, element) {
            if($(this).text().trim() != '') {
                output.push( i + '. ' + $(this).text().trim() );
                i++;
            }
        });
        $('#input').val(output.join('\n'));
    }
    

    numberOfItems
    未定义。在第一个循环中,将所有
  • s(用0)替换。。。在你的第二场比赛中,没有什么可以取代的了。也许可以从正则表达式中删除
    gi
    。就像@christian314159所说的,在第一次迭代之后,文本中不再有
  • 。一些调试代码会向您显示它。请在这个问题中添加一个完整的代码示例,而不仅仅是链接。比较简单,
    .replace()
    方法特别允许函数作为第二个参数。它的返回值变为替换值。顺便说一下,您也可以执行
    output.push(i++'..')
    并删除多余的行,但这很难理解,因为它可以工作,谢谢!我真的很感谢你的帮助,我以后一定会再看。我想使用一种原始的JavaScript方法,因为我觉得在深入研究一种语言库之前,我应该对它有充分的理解。我要用@cookiemonster's。