嗨,我
有一个 html 表单,我有一些 javascript 可以运行,每次您专注于输入字段时,rel 值都会消失,但是它适用于所有输入类型,除了电话和我不确定我做错了什么。
javascript是:
$(document).ready(function() {
$('select.fancyselect').fancySelect();
$('input[type=text], input[type=email], input[type=phone], input[type=url], textarea,').focus(function(){
if($(this).val() == $(this).attr('rel')) {
$(this).val('');
}
});
$('input[type=text], input[type=email], input[type=phone], input[type=url], textarea').blur(function(){
if($(this).val() == '') {
$(this).val($(this).attr('rel'));
}
});
"电话表单"字段的 HTML 为:
<div class="control-group">
<label class="control-label" for="field-phone">Phone Number:<br /> <em>(Optional)</em></label>
<div class="controls">
<input type="number" name="field-phone" id="field-phone" value="<?= $_POST['field-phone']; ?>" rel="Phone number here...">
</div>
</div>
我也在使用引导程序,我发现这个问题只发生在火狐而不是 chrome 或 safari 中。
您正在使用CSS选择器input[type=phone]
,该选择器指的是您没有的<input type='phone'/>
。您正在使用<input type='number'/>
因此需要使用 CSS 选择器input[type='number']
。
试试这个:
<input type="text" onfocus="if(this.value == '<?= $_POST['field-phone']; ?>') { this.value = ''; }" value="<?= $_POST['field-phone']; ?>" />