0

私のページには、入力する必要のある3つのフィールドがあります。入力すると、小さなポップアップが表示され、登録できます。しかし、今はJavaScriptでそれを持っています。1つ以上のファイルが入力されていない場合は、次々にメッセージが表示されます。たとえば、フィールド1、2、3は入力されていません。メッセージボックスに入力してください。フィールド1に入力してください。2番目のポップアップで2フィールドに入力し、3フィールドに入力してください。そして、それが開いた直後に登録ポップアップが表示されます。すべてのフィールドが入力されていない限り、それを防ぎたいと思います。フィールドが入力されていない状態でポップアップを開くべきではありません。

コードは次のとおりです。

 <script type="text/javascript" id ="popup">

$(document).ready(function() {


$("#lightboxRegister").colorbox({inline:true, width:"50%"});

    $("#lightboxRegister").click(function() {
        if(document.getElementById("title-vis").value ==""){
            alert("You need to enter a book title.");
            self.close();
        }
        if(document.getElementById("abstract-vis").value ==""){
            alert("You need to enter a book abstract.");
            self.close();
        }
        if(document.getElementById("writtenby-vis").value ==""){
            alert("You need to enter a pen name.");
            self.close();
        }

        document.getElementById("title").value = document.getElementById("title-vis").value;
        document.getElementById("abstract").value = document.getElementById("abstract-vis").value;
        document.getElementById("writtenby").value = document.getElementById("writtenby-vis").value;

    });


  });
</script>

このポップアップを取得できません

$("#lightboxRegister").colorbox({inline:true, width:"50%"});

クリック機能内で動作するには:

 $("#lightboxRegister").click(function()

私は3番目のファイルのメッセージを閉じた直後にこれを入れてみました:

$(this).colorbox({inline:true, width:"50%"});

しかし、次のエラーが発生します。

Uncaught TypeError:オブジェクト#にはメソッド'colorbox'がありません

これを修正する方法について何か助けはありますか?

4

2 に答える 2

1
<div style="display:none;">
    <div id="lightboxRegister"> REGISTER FORM </div>
</div>

<input type="button" id="btn" value="open inline?" />

jqueryコードは次のとおりです。

$('#btn').click(function(){
    $.colorbox({inline:true, width:"50%", href: '#lightboxRegister'});
});

デモ:jsfiddle.net/9QkmH/

于 2012-09-20T14:22:50.037 に答える
0

オンデマンドでカラーボックスを開くには、次を使用します。

$.colorbox({...});

例:

$('.myButton').click(function() {
  alert('ok, lets open colorbox now!');
  $.colorbox({href: 'myUrl.html', width: 500});
});
于 2012-09-20T14:24:24.503 に答える