修改`input`值

时间:2011-09-26 09:25:29

标签: jquery

HTML:

<div class="mydiv">
    My Div
    <ul>
       <li><input type="submit" value="first"/></li>
       <li><input type="submit" value="second (blah blah)"/></li>
       <li><input type="submit" value="third . blah blah"/></li>
    </ul>
</div>

如何检索input的值并将'('或'。'替换为'\ n'?结果如下所示:

second
(blah blah)

2 个答案:

答案 0 :(得分:1)

写这个假设你想保留分隔符,如你所暗示的那样,you can see it working here

$(document).ready(function(){
  $('.mydiv input[type=submit]').each(function() {
    $this = $(this);
    $this.val($this.val().replace(/(\.|\()/, '\n$1'));
  });
});

编辑:@vzwick:关于你的编辑号it shouldn't be a one-liner,我故意缓存$ this。

答案 1 :(得分:0)

应该这样做:

$(document).ready(function(){
    $('.mydiv input').each(function(i,e){
        $(e).val($(e).val().replace('(', '\n').replace('.', '\n'))
    });
});

另外,请记住,这可能/会在某些浏览器中导致渲染问题(即WebKit不会调整输入的大小)。

http://jsfiddle.net/YTD9p/