2009-04-09 87 views
0

我正在研究标记系统,并希望用户能够在页面上添加和删除标记。对于每一个多数民众赞成加入我显示一个小标签和一个X的div去除标签。我有添加功能的工作,但我不知道如何去做,所以我可以删除它们。我也有一个隐藏的输入,它应该包含所有的值,以便在提交信息时我可以使用它。使用jQuery创建和删除信息

继承人我尝试不工作:

function tagsremove(tag) { 
    $('#hiddentags').val().replace('/'+tag+'\,\s/', ''); 
    $("#tagdiv-"+tag.replace(" ","_")).fadeOut('normal', function(){ 
     $(this).remove(); 
    }); 

} 
$(document).ready(function(){ 
    $('#tagbutton').click(function(){ 
     var tags = $('#tagsbox').val().split(", "); 
     for (var i in tags) { 
        $('#hiddentags').val($('#hiddentags').val() + tags[i] +", "); 
      $('#curtags').append("<div class='tag'>" + tags[i] + " <a href='#' id='#tagdiv-"+tags[i].replace(" ", "_")+"' onclick='tagsremove(\""+tags[i]+"\");' >x</a></div>"); 
     } 
     $('#tagsbox').val(''); 
    }); 
}); 

继承人的HTML去用它:

<div class='statbox'> 
    <form method='post' action='post.php' id='writeform'> 
     <p class='subtitle'>Title</p> 
     <input type='text' name='title' id='titlebox' /><br /> 
     <p class='subtitle'>Body</p> 
     <textarea id='postbox' name='body' rows='10'></textarea><br /> 
     <p class='subtitle'>Tags</p> 
     <input type='text' id='tagsbox' /><input type='button' id='tagbutton' value='Add' /> 
     <p class='subsubtitle'>Seperate by commas (eg. "programming, work, job")</p> 
     <div class='subsubtitle' id='curtags'>Current Tags:</div> 
     <input type='hidden' value='' name='tags' id='hiddentags' /> 
    </form> 
</div> 

回答

0

而不是使用.VAL( ''),你应该使用的.html ( '');

http://docs.jquery.com/Manipulation

+0

我使用VAL,因为我改变了一个隐藏的输入值在一种情况下的值,并在文本框另一个。 – 2009-04-09 06:12:49

1

使每个标签div都有一个相关的ID。比如说,“play pen balls”标签,你的ID可以是“tagdiv-play_pen_balls”。现在你可以做

function removeTag(tag) { 
    $("#tagdiv-"+tag.replace(" ","_")).remove(); 
} 

删除可见的div。

(我不知道如果这是你问的是什么,虽然...)