首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery添加新字段

问jQuery添加新字段
EN

Stack Overflow用户
提问于 2012-08-01 19:27:35
回答 1查看 298关注 0票数 0

所以,我在这里试图做的是,onClick添加另一个,与上面的那个完全一样。我在PHP中创建了一个for循环,以便在其中创建适当的字段。

我正在运行的问题是:当您单击..repatable add按钮时,我会得到“先替换两次”警报,而“后替换”警报根本不会触发。和ideas?

代码语言:javascript
复制
jQuery('.repeatable-add').click(function() { 
    field = jQuery(this).siblings('ul.image-details').find('li:last').clone(true);  
    fieldLocation = jQuery(this).siblings('ul.image-details').find('li:last');  
    jQuery('input', field).val('').attr('name', function(index, name) {
            alert(name +' before replace');
            return name.replace(/(\d+)/, function(fullMatch, n) {  
            return Number(n) + 1;  
            alert(name +' after replace');
        });  
    })  
    field.insertAfter(fieldLocation, jQuery(this).siblings('ul.image-details').find('li:last'))  
    return false;  
});  
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-01 20:27:23

我把这个答案发到别的地方了,别知道发生了什么。

这是因为你试图在返回后发出警报,所以它不会开火。

我不知道你想用输入做什么,但我想出了一个解决方案:

代码语言:javascript
复制
<script type="text/javascript">
jQuery(document).ready(function(){
    jQuery('.repeatable-add').click(function(){
            var copyThis = jQuery(".image-details").find("li:last").attr('outerHTML');
            jQuery(".image-details").append(copyThis);
            var name = jQuery("input").attr("name");
            var count = name.replace(/\D+/, '');
            var newCount = count++;
            jQuery("input").attr("name",name.replace(newCount.toString(),count.toString()));
        return false;  
    });  
});
</script>

<ul class="image-details">
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
</ul>
<input name="ithas1" />
<button class='repeatable-add'>button</button>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11766801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档