我正在创建一个调查表单,当用户关注它们时,需要突出显示每个问题和一组答案(通过更改背景颜色)..focus()和.blur()都可以在Firefox和IE中使用,但不能完全在Safari和Chrome中使用.我也尝试了.focusin()和.focusout(),结果相同.编辑:单击不会触发焦点事件,但通过输入字段进行选项卡. 我说并不完全是因为它适用于文本输入,选择输入和textarea输入; 但不是收音机和复选框输入.
$(document).ready(function()
{
$("form li").focusin(function()
{
$(this).addClass("over");
}).focusout(function()
{
$(this).removeClass("over");
});
});
Run Code Online (Sandbox Code Playgroud)
这适用于类似于此的html块:
<li>
<label for="webmail" class="desc">Email</label>
<input type="text" name="webmail" id="webmail" />
</li>
<li>
<label for="business" class="desc">Purpose of your Charter Flight:</label>
<div>
<span>
<input type="radio" name="purpose" id="business" class="radio" />
<label class="choice" for="business">Business</label>
</span>
<span>
<input type="radio" name="purpose" id="pleasure" class="radio" />
<label class="choice" for="pleasure">Pleasure</label>
</span>
</div>
</li>
Run Code Online (Sandbox Code Playgroud)
我试着瞎搞与切换,但是我正在寻找一个更优雅的解决方案,不使用令人费解的逻辑,使其工作涉及.有任何想法吗?
如何使以下正则表达式只接受我希望它接受的符号以及空格?
if(!preg_match('/^[A-Z0-9\/\'&,.-]*$/', $line))
{
die();
}
else
{
//execute the rest of the validation script
}
Run Code Online (Sandbox Code Playgroud)
我希望用户只能在给定的文本字段$ line中输入AZ,0-9,正斜杠,撇号,&符号,逗号,句点和连字符.
它目前将接受HAM-BURGER的一些完美的东西,它应该接受.当用户想要键入HAM BURGER(< - 注意空格)时,我遇到了一个问题.
如果我从开头删除^和/或从结尾删除$,如果用户键入任何内容,它将成功.我试图解决这个问题的方法是将*变为+,但只要用户输入至少一个可接受的字符,它就会接受任何内容.