39

내 등록 양식을 제출하기 위해 ajax를 사용하고 있지만 컨트롤러에서 돌아 오는 오류에 대한 오류 메시지를 표시하도록 툴팁을 설정하는 데 문제가 있습니다.잡히지 않은 오류 : 툴팁 위젯 인스턴스에 대해 '표시'하는 방법이 없습니다.

자바 스크립트 :

$(document).on('ajax:success', '.user_modal_form', function(e, data, status, xhr) { 
    var context; 
    context = $(this); 
    if (data.success) { 
    $('button', context).hide(); 
    $('.spinner', context).show(); 
    location.reload(); 
    } else { 
    if (data.errors != null) { 
     $.each(data.errors, function(key, error) { 
     var field; 
     field = $("#athlete_" + key); 
     field.attr('data-original-title', "" + key + " " + error).tooltip({ 
      trigger: 'manual' 
     }).tooltip("show"); 
     }); 
    } 
    } 
}); 

오류 메시지 :

+0

Brogdan의 대답은 옳았지 만 처음부터 완전히 실수 한 실수 였기 때문에 받아 들일 수 없었습니다. – heymega

+1

@heymega - 그래서 팬티가 풀릴 수 있습니다. 나는 대답을 받아 들였습니다. – dennismonsewicz

+0

뚱뚱했을 때 나는 당신이 더 마음에 들었습니다. :) – heymega

답변

125

Uncaught Error: no such method 'show' for tooltip widget instance 내가 같은 오류가 발생했다.

jQuery UI와 충돌이 있습니다.

jQuery UI를 사용하는 경우 스크립트로드 순서를 변경해야합니다.

내 작업로드 순서 :

  • jQuery를
  • jQuery를 UI
  • Bootstap
+1

이것은 굉장합니다. 나는 모든 것이 정확하다는 것을 계속 확인하고 난 후에 좌절감을 얻고 있었고 충돌이 있는지 전혀 모른다. – resting

+1

이것은 굉장합니다! 너무 단순하면서도 시간이 오래 걸리므로 ... 포인터 덕분입니다! – sappenin

+1

감사합니다. 20 분이 내가 잘못하고있는 것을 알아 내는데 낭비했습니다! – RolandoCC

1

저를위한 가장 쉬운 해결책은 jQuery를 UI 분배에서 툴팁을 구성 요소를 제거하기 만했다 I downloaded.

2

루트이의과 유사한 문제 JqueryUI 및 부트 스트랩 모두 툴팁 방법이

"no such method 'hide' for tooltip widget instance"

,

JqueryUI 작품 같은 :

$el.tooltip("option","show"); 
$el.tooltip("option","hide"); 

부트 스트랩 작품이 좋아 : 보그 루이스을 가리 켰을 때,

$el.tooltip("show"); 
$el.tooltip("hide"); 

그래서, 당신은 requirejs으로 예를 들어, 스크립트를 다시 정렬 할 필요가, 당신은 부트 스트랩로드 할 수 있도록 할 필요가 JqueryUI

var $ = require('jquery'); 
require('jquery_ui'); 
require('bootstrap'); 

구성을 다음과 같이 조정하십시오.

bootstrap: { 
     deps: ['jquery', 'jquery_ui'] 
    },