基于多个单选按钮更新textarea

时间:2012-12-12 15:24:50

标签: javascript jquery

我对jQuery很陌生,我试图修复一段脚本来更新基于多个单选按钮的textarea内容。

单选按钮:

<input type='radio' name='color'>Red
<input type='radio' name='color'>Green
<input type='radio' name='size'>Small
<input type='radio' name='size'>Large

textarea有默认内容:

<textarea><a href='http://www.example.com'><img src='images/red-small.png'></a></textarea>

我想单独更新文件名的两个部分。是否可以通过更新变量或其他内容来更新textarea的内容?

谢谢!

3 个答案:

答案 0 :(得分:0)

是的,您可以使用jQuery选择textarea并根据选择的单选按钮控制它。

$('input[type="radio"]').change(function() {
    if($(this).val() === 'red') {
        $('textarea').css('background','red');
    } else {
        $('textarea').css('background','');
    }
});

我认为,这是一个更好地回答你的问题的方法:

http://jsfiddle.net/U8Fhv/1/

答案 1 :(得分:0)

您可以使用JQuery的.val()函数来更改textarea的内部结构。

示例:

$(“textarea”)。val(“你想把它放在textarea中的新东西”); //&lt;&lt;设置

var original_val = $(“textarea”)。val(); //&lt;&lt;获得

答案 2 :(得分:0)

我不知道那些a.href和img.src来自哪里。但是如果你只想要一个在更改textarea内容之前同时作为参数的函数,那么我认为这是

function settextareacontent(a,img){
 var t = $('textarea');
 var d = $('<div>');
 d.html(t.html().replace(/&lt;/g,'<').replace(/&gt;/g,'>'));
 d.children()[0].src = a;      //X
 d.children()[1].href = img;   //X
 t.html(d.html());
}

您也可以使用正则表达式来执行此操作。但是,如果你的textarea内容是不可预测的,并且使用正则表达式几乎是不可能的,那么你可以使用上面的函数,修改X部分,为textarea中的每个元素添加id,最后只使用jquery来获取元素和集合他们的属性值