2011-11-08 7 views
1

http://windowsnaarlinux.nl/#distrokiezer空になったときに動作を一時的にPHPのバージョンでページを置き換え、ここではjavascriptのバージョンです:あなたが最初の2つのフィールドの1のままにするたびにhttp://windowsnaarlinux.nl/pages/distrokiezer.html
ボタンのみ、最初の2つのフィールドが


空と送信ボタン(キャプションBevestigen)をクリックすると、警告が表示され、スクリプトが終了します。しかし、あなたが最初の2つのフィールドに記入してから、提出をクリックすると、これまでに何が起こったのですか。アラートは表示されません。また、Chromeのjavascriptコンソールに何らかのエラーや警告が表示されることもありません。

元のページ(ウィッヒのjQueryの一つはdiv.window#contentにコンテンツをロードする)の場所にあります。http://windowsnaarlinux.nl/pages/distrokiezer.html
はそれが前にうまく働いたことを言及する価値があるかもしれない、と私は正直に私がやったことを手がかりに自分を持っていないことそれを壊すために。


...私は、スクリプトを書き直したときに結果を出力する部分を忘れてしまったことに気付きました。 <

+0

アラートを表示するjavascriptを投稿できますか? –

+0

@Georgeこれは 'distrokiezer.htm'ファイルのソースにあります。しかし、ここには別にJavascriptがあります:http://pastebin.com/ikLPpBRE – RobinJ

答えて

1

残って空の値がためにあなたのコードのチェックのようなものではありません時に最初の2つのフィールドがテキスト入力されているため、問題は、フィールドを空のままにされたときに警告がのみ表示されていることである:

if ((stop == false) && (document.getElementById('q1a').value == '')) 

しかし、あなたの選択ボックスはデフォルト値が変更されていません。JavaScriptがトリガーしない最初のオプションの値です。

は、すべてのあなたの選択のフォームの最初のオプションとして、このようなものを置く:

<option value="" selected="selected">Please select an option</option> 

これはデフォルト値が何もないことを保証します。そのオプションを使用している人(既にあなたのような人)を止めるようにしてください。

私のコメントに加えて、これは、現在、2つのチェックボックスが満たされているときにアラートが受信されない理由です。

は、全体のスクリプトです....

var distros = new Array('ubuntu', 'ubuntu-lts', 'mint', 'mintdebian', 'mintlxde', 'mintdebianxfce', 'elementary', 'debian-stable', 'debian-unstable', 'debian-testing', 'fedora', 'fedorakde', 'fedoralxde', 'fedoraxfce', 'centos', 'archlinux', 'puppylinux', 'lucidpuppy', 'crunchbang', 'dsl', 'tinycore', 'pinguyos', /*'gentoo',*/ 'mandriva', 'mageia', 'lubuntu', 'xubuntu', 'kubuntu', 'chakra', 'slackware', 'zorin', 'bodhi', 'vector', 'antix', 'opensuse'); 

    function zoekDistro() 
    { 
     try 
     { 
      var stop = false; 

      //q1a 
      var q1a = parseInt(document.getElementById('q1a').value); 
      if ((stop == false) && (document.getElementById('q1a').value == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 1a!'); 
       stop = true; 
      } 
      if (stop == false) 
      { 
       if (q1a < 1600) 
       { 
        dumpDistro('pinguyos'); 
        dumpDistro('mintkde'); 
        dumpDistro('kubuntu'); 
       } 
       if (q1a < 1400) 
       { 
        dumpDistro('mint'); 
        dumpDistro('fedorakde'); 
        dumpDistro('fedora'); 
        dumpDistro('pinguyos'); 
        dumpDistro('chakra'); 
        dumpDistro('ubuntu'); 
        dumpDistro('mandriva'); 
        dumpDistro('opensuse'); 
       } 
       if (q1a < 1200) 
       { 
        dumpDistro('ubuntu-lts'); 
       } 
       if (q1a < 1000) 
       { 
        dumpDistro('mintdebian'); 
        dumpDistro('debian-stable'); 
        dumpDistro('debian-testing'); 
        dumpDistro('debian-unstable'); 
        dumpDistro('mageia'); 
        dumpDistro('xubuntu'); 
        dumpDistro('crunchbang'); 
       } 
       if (q1a < 800) 
       { 
        dumpDistro('mintlxde'); 
        dumpDistro('mintdebianxfce'); 
        dumpDistro('elementary'); 
        dumpDistro('fedoralxde'); 
        dumpDistro('fedoraxfce'); 
        dumpDistro('centos'); 
        dumpDistro('archbang'); 
        dumpDistro('zorin'); 
       } 
       if (q1a < 600) 
       { 
        dumpDistro('lubuntu'); 
        dumpDistro('slackware'); 
        dumpDistro('archlinux'); 
       } 
       if (q1a < 400) 
       { 
        dumpDistro('vector'); 
        dumpDistro('gentoo'); 
       } 
       if (q1a < 300) 
       { 
        dumpDistro('antix'); 
        dumpDistro('lucidpuppy'); 
        dumpDistro('bodhi'); 
       } 
       if (q1a < 200) 
       { 
        dumpDistro('puppylinux'); 
        dumpDistro('dsl'); 
       } 
       if (q1a < 100) 
       { 
        dumpDistro('tinycore'); 
       } 
      } 
      //q2a 
      var q1b = parseInt(document.getElementById('q1b').value); 
      if ((stop == false) && (document.getElementById('q1b').value == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 1b!'); 
       stop = true; 
      } 
      if (stop == false) 
      { 
       if (q1b < 2000) 
       { 
        dumpDistro('pinguyos'); 
       } 
       if (q1b < 1600) 
       { 
        dumpDistro('kubuntu'); 
        dumpDistro('ubuntu'); 
       } 
       if (q1b < 1400) 
       { 
        dumpDistro('fedora'); 
        dumpDistro('fedorakde'); 
       } 
       if (q1b < 1000) 
       { 
        dumpDistro('ubuntu-lts'); 
        dumpDistro('mint'); 
        dumpDistro('debian-unstable'); 
        dumpDistro('mandriva'); 
        dumpDistro('mageia'); 
        dumpDistro('xubuntu'); 
        dumpDistro('chakra'); 
        dumpDistro('opensuse'); 
       } 
       if (q1b < 800) 
       { 
        dumpDistro('mintlxde'); 
        dumpDistro('lubuntu'); 
       } 
       if (q1b < 700) 
       { 
        dumpDistro('elementary'); 
       } 
       if (q1b < 512) 
       { 
        dumpDistro('mintdebian'); 
        dumpDistro('debian-testing'); 
        dumpDistro('fedoralxde'); 
        dumpDistro('fedoraxfce'); 
        dumpDistro('crunchbang'); 
       } 
       if (q1b < 400) 
       { 
        dumpDistro('mintdebianxfce'); 
        dumpDistro('debian-stable'); 
        dumpDistro('archbang'); 
        dumpDistro('archlinux'); 
        dumpDistro('centos'); 
        dumpDistro('zorin'); 
        dumpDistro('vector'); 
       } 
       if (q1b < 256) 
       { 
        dumpDistro('gentoo'); 
        dumpDistro('slackware'); 
       } 
       if (q1b < 128) 
       { 
        dumpDistro('bodhi'); 
        dumpDistro('puppylinux'); 
       } 
       if (q1b < 64) 
       { 
        dumpDistro('lucidpuppy'); 
        dumpDistro('antix'); 
       } 
       if (q1b < 48) 
       { 
        dumpDistro('tinycore'); 
       } 
      } 
      //q2a 
      var q2a = document.getElementById('q2a').value; 
      if ((stop == false) && (q2a == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 2a!'); 
       stop = true; 
      } 
      if (stop == false) 
      { 
       if (q2a === 'nee') 
       { 
        dumpDistro('debian-stable'); 
        dumpDistro('debian-testing'); 
        dumpDistro('debian-unstable'); 
        dumpDistro('centos'); 
        dumpDistro('archlinux'); 
        dumpDistro('puppylinux'); 
        dumpDistro('dsl'); 
        dumpDistro('tinycore'); 
        dumpDistro('gentoo'); 
        dumpDistro('chakra'); 
        dumpDistro('slackware'); 
        dumpDistro('vector'); 
        dumpDistro('mandriva'); 
        dumpDistro('archbang'); 
        dumpDistro('antix'); 
       } 
      } 
      //q2b 
      var q2b = document.getElementById('q2b').value; 
      if ((stop == false) && (q2b == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 2b!'); 
       stop = true; 
      } 
      if (stop == false) 
      { 
       if (q2b === 'ja') 
       { 
        dumpDistro('debian-unstable'); 
        dumpDistro('centos'); 
        dumpDistro('archlinux'); 
        dumpDistro('archbang'); 
        dumpDistro('puppylinux'); 
        dumpDistro('dsl'); 
        dumpDistro('tinycore'); 
        dumpDistro('gentoo'); 
        dumpDistro('vector'); 
       } 
      } 
      //q2c 
      var q2c = parseInt(document.getElementById('q2c').value); 
      if ((stop == false) && (document.getElementById('q2c').value == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 2c!'); 
       stop = true; 
      } 
      if (stop == false) 
      { 
       if (q2c < 8) 
       { 
        dumpDistro('gentoo'); 
        dumpDistro('archlinux'); 
       } 
       if (q2c < 7) 
       { 
        dumpDistro('tinycore'); 
       } 
       if (q2c < 6) 
       { 
        dumpDistro('debian-unstable'); 
        dumpDistro('centos'); 
        dumpDistro('archbang'); 
        dumpDistro('puppylinux'); 
        dumpDistro('dsl'); 
        dumpDistro('chakra'); 
        dumpDistro('slackware'); 
        dumpDistro('vector'); 
        dumpDistro('antix'); 
        dumpDistro('mandriva'); 
       } 
       if (q2c < 5) 
       { 
        dumpDistro('debian-testing'); 
       } 
       if (q2c < 4) 
       { 
        dumpDistro('crunchbang'); 
       } 
       if (q2c < 3) 
       { 
        dumpDistro('mintdebian'); 
        dumpDistro('mintdebianxfce'); 
        dumpDistro('debian-stable'); 
        dumpDistro('fedora'); 
        dumpDistro('fedorakde'); 
        dumpDistro('fedoralxde'); 
        dumpDistro('fedoraxfce'); 
        dumpDistro('mandriva'); 
       } 
      } 
      //q3a 
      var q3a = parseInt(document.getElementById('q3a').value); 
      if ((stop == false) && (document.getElementById('q3a').value == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 3a!'); 
       stop = true; 
      } 
      if (stop == false) 
      { 
       if (q3a == 4) 
       { 
        dumpDistro('ubuntu'); 
        dumpDistro('ubuntu-lts'); 
        dumpDistro('elementary'); 
        dumpDistro('fedorakde'); 
        dumpDistro('opensuse'); 
        dumpDistro('mageia'); 
        dumpDistro('mint'); 
        dumpDistro('mintlxde'); 
        dumpDistro('lubuntu'); 
        dumpDistro('kubuntu'); 
        dumpDistro('xubuntu'); 
       } 
       if (q3a == 3) 
       { 
        dumpDistro('elementary'); 
       } 
       else if (q3a == 1) 
       { 
        dumpDistro('debian-unstable'); 
        dumpDistro('debian-testing'); 
        dumpDistro('fedoralxde'); 
        dumpDistro('fedoraxfce'); 
        dumpDistro('centos'); 
        dumpDistro('archlinux'); 
        dumpDistro('puppylinux'); 
        dumpDistro('dsl'); 
        dumpDistro('gentoo'); 
        dumpDistro('mandriva'); 
        dumpDistro('vector'); 
        dumpDistro('antix');     
       } 
      } 
      //q3b 
      var q3b = document.getElementById('q3b').value; 
      if ((stop == false) && (q3b == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 3b!'); 
       stop = true; 
      } 
      if (stop == false) 
      { 
       if (q3b == 'ja') 
       { 
        dumpDistro('ubuntu'); 
        dumpDistro('ubuntu-lts'); 
        dumpDistro('debian-testing'); 
        dumpDistro('debian-unstable'); 
        dumpDistro('debian-stable'); 
        dumpDistro('elementary'); 
        dumpDistro('fedora'); 
        dumpDistro('fedoralxde'); 
        dumpDistro('fedoraxfce'); 
        dumpDistro('centos'); 
        dumpDistro('archlinux'); 
        dumpDistro('crunchbang'); 
        dumpDistro('archbang'); 
        dumpDistro('pinguyos'); 
        dumpDistro('gentoo'); 
        dumpDistro('mandriva'); 
        dumpDistro('xubuntu'); 
       } 
       if (q3b == 'neevoorwaarde') 
       { 
        dumpDistro('debian-testing'); 
        dumpDistro('debian-unstable'); 
        dumpDistro('debian-stable'); 
        dumpDistro('fedora'); 
        dumpDistro('centos'); 
        dumpDistro('archlinux'); 
        dumpDistro('pinguyos'); 
        dumpDistro('gentoo'); 
        dumpDistro('mandriva'); 
        dumpDistro('xubuntu'); 
       } 
       if (q3b == 'neemacos') 
       { 
        dumpDistro('debian-testing'); 
        dumpDistro('debian-unstable'); 
        dumpDistro('debian-stable'); 
        dumpDistro('fedora'); 
        dumpDistro('fedoralxde'); 
        dumpDistro('fedoraxfce'); 
        dumpDistro('centos'); 
        dumpDistro('archlinux'); 
        dumpDistro('crunchbang'); 
        dumpDistro('archbang'); 
        dumpDistro('gentoo'); 
        dumpDistro('mandriva'); 
        dumpDistro('mageia'); 
        dumpDistro('xubuntu'); 
        dumpDistro('mint'); 
        dumpDistro('mintdebian'); 
        dumpDistro('mintlxde'); 
        dumpDistro('mintdebianxfce'); 
        dumpDistro('fedorakde'); 
        dumpDistro('puppylinux'); 
        dumpDistro('lucidpuppy'); 
        dumpDistro('dsl'); 
        dumpDistro('lubuntu'); 
        dumpDistro('kubuntu'); 
        dumpDistro('chakra'); 
        dumpDistro('slackware'); 
        dumpDistro('zorin'); 
        dumpDistro('vector'); 
        dumpDistro('antix'); 
        dumpDistro('opensuse'); 
       } 
      } 
      //q3c 
      var q3c = document.getElementById('q3c').value; 
      if ((stop == false) && (q3c == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 3c!'); 
       stop = true; 
      } 
      if (stop == false) 
      { 
       if (q3c == 'ja') 
       { 
        dumpDistro('debian-stable'); 
        dumpDistro('debian-testing'); 
        dumpDistro('debian-unstable'); 
        dumpDistro('centos'); 
        dumpDistro('gentoo'); 
       } 
      } 
      //q3d 
      var q3d = document.getElementById('q3d').value; 
      if ((stop == false) && (q3d == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 3d!'); 
       stop = true; 
      } 
      if (stop == false) 
      { 
       if (q3d == 'stabiel') 
       { 
        dumpDistro('ubuntu'); 
        dumpDistro('mintdebian'); 
        dumpDistro('mintdebianxfce'); 
        dumpDistro('debian-unstable'); 
        dumpDistro('debian-testing'); 
        dumpDistro('fedora'); 
        dumpDistro('puppylinux'); 
        dumpDistro('dsl'); 
        dumpDistro('pinguyos'); 
        dumpDistro('mandriva'); 
        dumpDistro('kubuntu'); 
        dumpDistro('chakra'); 
        dumpDistro('slackware'); 
        dumpDistro('opensuse'); 
       } 
       else if (q3d == 'test') 
       { 
        dumpDistro('debian-stable'); 
        dumpDistro('debian-unstable'); 
       } 
       else if (q3d == 'experimenteel') 
       { 
        dumpDistro('debian-stable'); 
       } 
      } 
      if (distros.length > 6) 
      { 
       if ((q1a > 1000) && (q1b > 1000)) 
       { 
        dumpDistro('mintlxde'); 
        dumpDistro('mintdebianxfce'); 
        if (distros.length > 3) { dumpDistro('fedoralxde'); } 
        if (distros.length > 3) { dumpDistro('fedoraxfce'); } 
        if (distros.length > 3) { dumpDistro('mintdebianxfce'); } 
        if (distros.length > 3) { dumpDistro('lucidpuppy'); } 
        if (distros.length > 3) { dumpDistro('crunchbang'); } 
        if (distros.length > 3) { dumpDistro('dsl'); } 
        if (distros.length > 3) { dumpDistro('tinycore'); } 
        if (distros.length > 3) { dumpDistro('bodhi'); } 
        if (distros.length > 3) { dumpDistro('antix'); } 
        if (distros.length > 4) 
        { 
         if (q3b != 'ja') 
         { 
          dumpDistro('zorin'); 
         } 
        } 
       } 
      } 
     } 
     catch (error) 
     { 
      alert(error); 
     } 
    } 
    function dumpDistro(distro) 
    { 
     for (var i = 0; i < distros.length; i++) 
     { 
      if (distros[i] == distro) 
      { 
       distros.splice(i,1); 
      } 
     } 
    } 
</script> 

var stop = false;そうのはそれを覚えてみましょう。

if ((stop == false) && (document.getElementById('q1a').value == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 1a!'); 
       stop = true; 
      } 

入力内容がある場合は起動しません。

if ((stop == false) && (document.getElementById('q1b').value == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 1b!'); 
       stop = true; 
      } 

入力に内容がある場合は起動しません。

if ((stop == false) && (q2a == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 2a!'); 
       stop = true; 
      } 

入力内容がある場合は起動しません。入力がコンテンツを持っているとき

if ((stop == false) && (q2b == '')) 
      { 
       alert('Geen antwoord opgegeven bij vraag 2b!'); 
       stop = true; 
      } 

は発生しません...のように...

は、あなたは何の値が空でない場合でも発動すべきだと思う特定のアラートを投稿することができますか?

+0

ヒントはありがたいですが、それは問題ではありません:p問題は、zoekDistro()関数の最後にアラートが表示されないことです。 – RobinJ

+0

@RobinJコードに何も問題はなく、呼び出しが行われ、組み込みのエラーが処理されずにtry catchが成功するため、エラーは発生していません。 'if'が失敗してもエラーは発生しません。私のコードは、あなたの警告としてあなたの今の機能の中に現れない警告の問題を間違いなく解決します。 –

+0

私は確かに、あなたが間違った質問を理解するか、あなたの答えが間違っていることを理解していますか...とにかく、あなたが言ったことは何もしませんでした。すべてが満たされ、送信ボタンをクリックすると、何も起こりません。ところで、私は最初の答えをデフォルトで選択したかったのです。彼らがjavascriptコードで空になっていることを確認したのは、私がすべてのことを気にしてしまった場合に備えてでした。 – RobinJ

0

コードをすばやく見れば、動作しているように見えるonclickハンドラの送信ボタンが表示されます。

フィールドと送信ボタンを囲むFORMタグはありません。そのため、ブラウザは何を提出するのか、どこに送信するのかわかりません。

+0

私が思ったように、これはボタンのonClickイベントを使用しているだけなので、違いはありません。 – RobinJ

関連する問題