单击文本区域可隐藏标签值
Clicking textarea hides label value
当我
点击文本区域时,有没有办法删除标签?
http://jsfiddle.net/1smvym84/4/
.HTML:
<li id='field_1_9' class='gfield' >
<label class='gfield_label' for='input_1_9'>Place this inside the textarea</label>
<div class='ginput_container'>
<textarea name='input_9' id='input_1_9' class='textarea medium' tabindex='8' rows='10' cols='50'></textarea>
</div>
</li>
JQUERY:
$(document).ready(function(){
$('.textarea').text($('.gfield_label').text());
$('.gfield_label').remove();
});
非常感谢任何帮助:-)
如果要
在焦点上删除它:
$("#input_1_9").focus(function() {
$(this).parent("div").prev("label").remove();
});
我认为您正在寻找的是HTML的占位符属性:
<textarea name="input_9" id="input_1_9" class="textarea medium" tabindex="8" rows="10" cols="50" placeholder="Your text goes here"></textarea>
我认为如果您使用占位符会更好。喜欢这个:
<textarea placeholder="Place this inside the textarea"></textarea>
但是,如果你想在JS中做到这一点,它将是这样的:
$('.textarea').on('click', function() {
$('.gfield_label').remove();
});
试试这个:
$(document).ready(function(){
//work for all elements which have the css class textarea
$('.textarea').click(function(){
$('.textarea').val($('.gfield_label').html());
//if you want to remove all elements having gfield_label css class
$('.gfield_label').remove();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form>
<label class="gfield_label">this is label</label>
<textarea class="textarea"></textarea>
</form>
您可能
希望在输入时将其删除,如果未写入任何内容,则将其添加回来。有两种方法可以实现此目的:
The HTML5 way:http://jsfiddle.net/1smvym84/8/
$(document).ready(function(){
var placeholderText = $('.gfield_label').text();
$('.textarea').attr("placeholder",placeholderText);
$('.gfield_label').remove();
});
jQuery方式:http://jsfiddle.net/1smvym84/7/
$(document).ready(function(){
var placeholderText = $('.gfield_label').text();
$('.textarea').text(placeholderText);
$('.gfield_label').remove();
$('.textarea').focus(function(){
var $this = $(this);
if ($this.text() === placeholderText){
$(this).text("");
}
}).blur(function(){
var $this = $(this);
if ($this.text() === ""){
$(this).text(placeholderText);
}
})
});
如果您始终如一地在标签上使用 for
属性,查找要删除的相应标签应该相当容易:
$('.textarea').on("focus", function() {
var areaId = $(this).attr("id");
var areaLabel = $("label[for='" + areaId + "']");
// Get the content from the label
$(this).text(areaLabel.text());
// Remove the label
areaLabel.remove();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label class='gfield_label' for='input_1_9'>Place this inside the textarea</label>
<div class='ginput_container'>
<textarea name='input_9' id='input_1_9' class='textarea medium' tabindex='8' rows='10' cols='50'></textarea>
</div>
相关文章:
- HTML5在提交并显示所需标签后显示隐藏的表单元素
- Chart.js条形图:网格颜色和隐藏标签
- Chart.js条形图标签在悬停时被隐藏
- ng高图表的响应行为,加载时隐藏编译的ng点击xAxis标签
- 如何隐藏和显示标签控件JavaScript
- 有没有一种方法可以为卸载的lazylod图像隐藏alt标签
- 隐藏 DIV 标签,直到填充所有文本字段
- 如何使用 JavaScriptJQuery 将隐藏输入标签的值与选择标签的选定选项的值进行设置
- 在Chart.js中隐藏y轴上的标签
- 根据单选按钮隐藏标签的函数
- 如果在使用IE 7或8时隐藏,则单击标签不选中复选框
- Tabindex Dosent隐藏li标签的内容
- 如何更改CSS文件或隐藏<link>标签
- 如何在没有代码隐藏访问权限的情况下将自定义 HTML 属性添加到 ASP.NET 标签
- 如何隐藏没有类的标签元素
- 单击文本区域可隐藏标签值
- 显示/隐藏<跨度>标签
- 如何从角度控制器隐藏标题标签
- 使显示标签隐藏
- 默认情况下,当html标签隐藏时,谷歌地图不会渲染整个帧