2016-04-23 3 views
1

アム....1つの要素でイベントを作成すると、別の要素にブートストラップ・ポップ・オーバーが発生しますか?以下の機能を持っていますJSで画像のアップロードボタンを、作成しようとして

1)

2)達成(クリックでファイル選択をポップアップ)のブートストラップの内側に選択されたプレビュー画像画像がファイル選択ダイアログから選択されたときにポップオーバーします。

このボタンには、要素にnoneの表示を適用するcssクラス(.file-inputs)を持つtypeファイルの入力タグが含まれているため、追加できません入力タグのポップオーバーは隠れ要素では機能しないので、入力タグの値が変更されたときに表示ボタンにポップオーバー表示をするにはどうすればいいですか

たぶんここ

ので

$('#photo').change()(function(){ 
 
    
 
if(!($("#photo").val() == '')){ 
 
    
 
    //Use bootstrap popover to show image over button 
 
    
 
     
 
    }); 
 
    
 
    });
のようなものは、ボタンのコードは

<button class="btn btn-default" rel="popover" id="btn-photo"> 
 
    <i class="glyphicon glyphicon-picture"></i> 
 
    <input class="file-inputs" type="file" name="photo" id="photo" /> 
 
</button>

であり、ここでのjs

です

$(document).ready(function() { 
 

 
    var img = ''; 
 

 
    //Event to display file chooser 
 
    $('.post-box').on('click', '#btn-photo', function() { 
 
    event.preventDefault(); 
 
    var elem = document.getElementById('photo'); 
 
    if (elem && document.createEvent) { 
 
     var evt = document.createEvent("MouseEvents"); 
 
     // Event(event_type:String, bubbles:Boolean, cancelable:Boolean) 
 
     evt.initEvent("click", false, true); 
 
     elem.dispatchEvent(evt); 
 

 

 
    } 
 

 

 
    }); 
 

 
    // Show popover on button 
 

 
    $("#btn-photo").popover({ 
 
    placement: 'top', 
 
    trigger: 'click', 
 
    title: 'Add a picture to your post! :)', 
 
    content: img, 
 
    html: true 
 
    }); 
 
    // }); 
 

 
});

答えて

1

速い答えは、このようなものです:

$("#yourbutton").on("yourevent", function(){$("#otherbutton").trigger("click");}); 
+0

おかげ@Enricoが、最初の1 #yourbuttonは、ファイルの入力変更イベントと#FILEことになっていますタグは#ortherbuttonの中に埋め込まれていますので、この方法を使用するとファイルの選択が再びポップアップしますが、私は他の方法でそのアイデアを使用しようとします...ありがとう –

+0

あなたの場合はおそらく独自のポップオーバー私はあなたがイメージを置くことができるとは確信していないので内部のブートストラップポップオーバー。 このような場合は、 – Enrico

+0

ブートロープのポップオーバーに画像を追加することができます。私はカスタムポップオーバーであなたの助けを歓迎します。 –

関連する問題