我使用以下代码从下拉列表中选择字体系列到文本框。现在我想用textarea代替文本框。我怎么能这样做?
<HTML>
<head>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
$(function () {
$('select[name="font"]').on('change', function () {
$('input[name="text1"]').css('font-family', this.value);
});
});
</script>
</head>
<body>
Select Programming font:
<select name="font">
<option value="arial">arial black</option>
<option value="tohma">tahoma</option>
<option value="times new roman">times new roman</option>
<option value="calibri">calibri</option>
</select>
<br>EnterValue:
<input type="text" name="text1" value="Font Family">
</body>
</html>
我试过
答案 0 :(得分:0)
您可以更改:
<input type="text" name="text1" value="Font Family" />
为:
<textarea>Font Family</textarea>
然后使用:
$('textarea').css('font-family', this.value);
而不是:
$('input[name="text1"]').css('font-family', this.value);
<强> Fiddle Demo 强>
答案 1 :(得分:0)
尝试,
<textarea name="text1" id="text1">Font Family</textarea>
答案 2 :(得分:0)
<input id="text-input" type="text" name="text1" value="Font Family">
var value = $('#text-input').val();
$('#text-input').replace('<textarea id="text-input" name="text1"></textarea >');
$('#text-input').val(value);
答案 3 :(得分:0)
您可以使用replaceWith方法从输入框更改为textarea,如下所示:
$('input[name="text1"]').replaceWith('<textarea />');
答案 4 :(得分:0)
尝试这样的事情
function t2t( el ) {
var element = document.getElementById( el.id );
var parent = element.parentNode;
parent.removeChild( element );
parent.innerHTML = element.type == 'text' ? '<textarea id="' + element.id + '" cols=50 rows=5>' + element.value +'</textarea>' : '<input type="text" id="' + element.id + '" value="' + element.value + '" />';
}