Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Bootstrap Popover focus和keyup_Javascript_Jquery_Twitter Bootstrap - Fatal编程技术网

Javascript Bootstrap Popover focus和keyup

Javascript Bootstrap Popover focus和keyup,javascript,jquery,twitter-bootstrap,Javascript,Jquery,Twitter Bootstrap,使用Bootstrap popover进行输入错误检查时,我尝试在初始焦点和随后的每个键控上检查输入。例如,以下是工作正常的初始焦点: $(document).ready(function(){ $('.link input').popover({ title:'Check for Caps:', trigger:'focus', placement:'right', html:'true'

使用Bootstrap popover进行输入错误检查时,我尝试在初始
焦点
和随后的每个
键控
上检查输入。例如,以下是工作正常的初始焦点:

$(document).ready(function(){                      
$('.link input').popover({                       
  title:'Check for Caps:',
  trigger:'focus',
  placement:'right',
  html:'true',
  container:'body',
  content: function() {
     var content = $(this).val();
     var ok = '<i class="fa fa-check-circle"></i>';
     var notok = '<i class="fa fa-times-circle"></i>';
     var noCaps = content.search(/[A-Z]/) + 1 > 0 ? notok:ok;                       
     var msg = '<ul class="reqs"><li>'+ noCaps +' No Caps Please</li></ul>';
     return msg;
     }                                                  
   });  
}); 
$(文档).ready(函数(){
$('.link input').popover({
标题:'CheckforCaps:',
触发器:'focus',
位置:'对',
html:'true',
容器:'主体',
内容:函数(){
var content=$(this.val();
var-ok='';
var notok=“”;
var noCaps=content.search(/[A-Z]/)+1>0?notok:ok;
var msg='
  • '+noCaps+'请不要使用上限
'; 返回味精; } }); });
但是,在哪里可以添加检查后续键控输入的函数?它是在这个函数的外部还是内部


这不是另一篇文章的翻版。这在引导文档中已经有很好的文档记录。如果这就是我所需要的,我会从文档中获取它。

popover的内容只在初始化时获取集合。触发器仅在显示内容时生效。它不允许您在每次显示popover时运行该函数

您需要初始化popover。然后还需要在keyup上运行函数。在下面的示例中,我将noCaps更改为content,以便您了解事件正在触发和更新

$(document).ready(function () {
    $('.link input').popover({
        title: 'Check for Caps:',
        trigger: 'focus',
        placement: 'bottom',
        html: 'true',
        container: 'body'
    }).on('keyup focus', function () {
        var element = $(this)
        var content = element.val();
        var ok = '<i class="fa fa-check-circle"></i>';
        var notok = '<i class="fa fa-times-circle"></i>';
        var noCaps = content.search(/[A-Z]/) + 1 > 0 ? notok : ok;
        var msg = '<ul class="reqs"><li>' + noCaps + ' No Caps Please</li></ul>';

        //This is the important stuff
        var popover = element.attr('data-content', msg).data('bs.popover');
        popover.setContent();
        popover.$tip.addClass(popover.options.placement);
    });
});
$(文档).ready(函数(){
$('.link input').popover({
标题:“检查大写:”,
触发器:“焦点”,
位置:'底部',
html:'真',
容器:“主体”
}).on('keyup focus',函数(){
var元素=$(此)
var content=element.val();
var-ok='';
var notok=“”;
var noCaps=content.search(/[A-Z]/)+1>0?notok:ok;
var msg='
  • '+noCaps+'请不要使用上限
'; //这是重要的东西 var popover=element.attr('data-content',msg).data('bs.popover'); setContent(); popover.$tip.addClass(popover.options.placement); }); });
JSIDLE链接:

我也做过类似的事情,在bootsnipp.com上

谢谢肖恩。这似乎不起作用。只要输入有焦点,文本“请不要大写”应该是持久的,并且每个
键都会显示
ok
变量或
notok
变量,它们只是字体图标。我试着把你的小提琴弄得乱七八糟,但我没法让它动起来。它似乎正在将输入中的任何内容添加到
keyup
上的popover内容中。是的,我在原始回复中表示,我更改了弹出窗口,以使用输入框中的内容。我把它改回使用正则表达式来检查大写字母。请参阅此链接。。。嗨,肖恩。仍在与此抗争。问题在于页面加载时输入中有一个初始值,当输入进入
焦点时需要检查该值。在我给出的示例中,这可以正常工作,但
keyup
检查不起作用。在您的示例中,
keyup
检查有效,但初始的
焦点
检查无效。如果有任何帮助,我们将不胜感激。请将“keyup”更改为“keyup focus”,看看这是否能为您提供您所需的结果。如果您在截止日期之前收到我昨晚从手机发送的邮件,我们将不胜感激。请参阅更新的小提琴,它在聚焦和键控时触发输入值检查