在输入栏的焦点上更改输入提交的样式
change style of input submit on focus of input field
我试图改变按钮的颜色时,任何输入字段的焦点。可以使用javascript或CSS。谢谢你的帮助。
.redbutton {
background-color:red;
}
<form accept-charset="UTF-8" method="post" action="http://go.pardot.com/l/213532/2016-08-08/jr9" class="form" id="pardot-form">
<p class="form-field first_name pd-text required required-custom">
<label class="field-label" for="213532_2892pi_213532_2892">First Name *</label>
<input type="text" name="213532_2892pi_213532_2892" id="213532_2892pi_213532_2892" value="" class="text" size="30" maxlength="40" onchange="" />
</p>
<p class="form-field last_name pd-text required required-custom">
<label class="field-label" for="213532_2894pi_213532_2894">Last Name *</label>
<input type="text" name="213532_2894pi_213532_2894" id="213532_2894pi_213532_2894" value="" class="text" size="30" maxlength="80" onchange="" />
</p>
<p class="form-field email pd-text required required-custom">
<label class="field-label" for="213532_2896pi_213532_2896">Email *</label>
<input type="text" name="213532_2896pi_213532_2896" id="213532_2896pi_213532_2896" value="" class="text" size="30" maxlength="255" onchange="piAjax.auditEmailField(this, 213532, 2896, 14168);" />
</p>
<p class="submit">
<input type="submit" accesskey="s" value="SUBMIT" />
</p>
</form>
可以使用jQuery的focus
和blur
回调。决定内部的当前状态,然后做任何你想做的…
$("input[type=text]").on("focus blur", function() {
if( $("input[type=text]:focus").length > 0 ) {
$("input[type=submit]").addClass("redbutton");
}
else {
$("input[type=submit]").removeClass("redbutton");
}
});
.redbutton {
background-color:red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form accept-charset="UTF-8" method="post" action="http://go.pardot.com/l/213532/2016-08-08/jr9" class="form" id="pardot-form">
<p class="form-field first_name pd-text required required-custom">
<label class="field-label" for="213532_2892pi_213532_2892">First Name *</label>
<input type="text" name="213532_2892pi_213532_2892" id="213532_2892pi_213532_2892" value="" class="text" size="30" maxlength="40" onchange="" />
</p>
<p class="form-field last_name pd-text required required-custom">
<label class="field-label" for="213532_2894pi_213532_2894">Last Name *</label>
<input type="text" name="213532_2894pi_213532_2894" id="213532_2894pi_213532_2894" value="" class="text" size="30" maxlength="80" onchange="" />
</p>
<p class="form-field email pd-text required required-custom">
<label class="field-label" for="213532_2896pi_213532_2896">Email *</label>
<input type="text" name="213532_2896pi_213532_2896" id="213532_2896pi_213532_2896" value="" class="text" size="30" maxlength="255" onchange="piAjax.auditEmailField(this, 213532, 2896, 14168);" />
</p>
<p class="submit">
<input type="submit" accesskey="s" value="SUBMIT" />
</p>
</form>
试试这个
$(document).ready(function(){
$("input").focus(function(){
$("input[type='submit']").addClass("changeBg");
});
$("input").focusout(function(){
$("input[type='submit']").removeClass("changeBg");
});
});
.redbutton {
background-color:red;
}
.changeBg{background:yellow;}
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<form accept-charset="UTF-8" method="post" action="http://go.pardot.com/l/213532/2016-08-08/jr9" class="form" id="pardot-form">
<p class="form-field first_name pd-text required required-custom">
<label class="field-label" for="213532_2892pi_213532_2892">First Name *</label>
<input type="text" name="213532_2892pi_213532_2892" id="213532_2892pi_213532_2892" value="" class="text" size="30" maxlength="40" onchange="" />
</p>
<p class="form-field last_name pd-text required required-custom">
<label class="field-label" for="213532_2894pi_213532_2894">Last Name *</label>
<input type="text" name="213532_2894pi_213532_2894" id="213532_2894pi_213532_2894" value="" class="text" size="30" maxlength="80" onchange="" />
</p>
<p class="form-field email pd-text required required-custom">
<label class="field-label" for="213532_2896pi_213532_2896">Email *</label>
<input type="text" name="213532_2896pi_213532_2896" id="213532_2896pi_213532_2896" value="" class="text" size="30" maxlength="255" onchange="piAjax.auditEmailField(this, 213532, 2896, 14168);" />
</p>
<p class="submit">
<input type="submit" accesskey="s" value="SUBMIT" />
</p>
</form>
下面的代码你改变background-color
的提交按钮是任何字段的焦点
$("input").not("input[type=submit]").focus(function(){
$("input[type=submit]").css("background-color","green")
})
如果字段失去焦点,重置提交按钮的background-color
$("input").not("input[type=submit]").blur(function(){
$("input[type=submit]").css("background-color","")
})
工作小提琴你可以这样做:
我以更详细的方式选择了这些项目,但如果你愿意,你可以简化。我只是想更清楚地说明我选择的是什么
ALSO更改电子邮件字段的输入类型,从text
到input type="email"
$("p:not(:last-child) input").focus(function() {
$(this).parent("p").siblings("p").find("input[type='submit']").addClass("redbutton")
});
$("p:not(:last-child) input").focusout(function() {
$(this).parent("p").siblings("p").find("input[type='submit']").removeClass("redbutton")
});
.redbutton {
background-color:red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form accept-charset="UTF-8" method="post" action="http://go.pardot.com/l/213532/2016-08-08/jr9" class="form" id="pardot-form">
<p class="form-field first_name pd-text required required-custom">
<label class="field-label" for="213532_2892pi_213532_2892">First Name *</label>
<input type="text" name="213532_2892pi_213532_2892" id="213532_2892pi_213532_2892" value="" class="text" size="30" maxlength="40" onchange="" />
</p>
<p class="form-field last_name pd-text required required-custom">
<label class="field-label" for="213532_2894pi_213532_2894">Last Name *</label>
<input type="text" name="213532_2894pi_213532_2894" id="213532_2894pi_213532_2894" value="" class="text" size="30" maxlength="80" onchange="" />
</p>
<p class="form-field email pd-text required required-custom">
<label class="field-label" for="213532_2896pi_213532_2896">Email *</label>
<input type="email" name="213532_2896pi_213532_2896" id="213532_2896pi_213532_2896" value="" class="text" size="30" maxlength="255" onchange="piAjax.auditEmailField(this, 213532, 2896, 14168);" />
</p>
<p class="submit">
<input type="submit" accesskey="s" value="SUBMIT" />
</p>
</form>
相关文章:
- JavaScript 表单操作更改RC方法发布文本输入提交
- 如何在用户输入提交后在同一页面中打印出表单字段值
- Sencha Touch:输入提交表单的键
- 角度文本输入提交无法触发控制台日志
- 输入提交按钮上的 UI-sref
- 如何使用 JavaScript 将输入提交元素转换为按钮元素
- 如何使用 javascript 在一个表单中验证不同的输入提交按钮
- 如何在使用推特提前输入提交时自动完成
- HTML输入提交onclick'不起作用
- 重置输入:提交后的数字
- 选中两个复选框时启用输入提交按钮
- 为什么取消输入提交而不是使用input type='button'
- 如何防止“输入提交”的默认行为
- 在IE中使用js禁用输入提交按钮FF并不# 39;工作
- 禁用输入提交
- 克拉吉文件输入提交文件的形式提交
- 如何更新innerHTML编号与每个输入提交
- 在输入栏的焦点上更改输入提交的样式
- 如何在单击输入提交按钮时添加fancybox
- 将按输入提交更改为单击提交