0

if else show/hide /statement/function を使用してボタンをドロップダウンにしようとしていますが、機能しないようです。jquery と javascript を試しましたが、うまくいきません。これを実現するために、javascript と jquery を使用したいと考えています。

ここに私が達成しようとしているいくつかの例があります (注: これは例としてのみ意図的に行われたものであり、これが有効なコードではないことを十分に認識しています):

        if (q1 == "iphone3gs") {
            $('.show(iphone3gs)').val('.hide(iphone4 iphone4s iphone5 
iphone5s)').click(function () {
                window.location.href = 'iphone3gs'
            });

        if (q1 == "iphone4") {
            $('.show(iphone4)').val('.hide(iphone3gs iphone4s iphone5 
iphone5s)').click(function () {
                window.location.href = 'iphone3gs'
            });

        if (q1 == "iphone4S") {
            $('.show(iphone4s)').val('.hide(iphone3gs iphone4 iphone5 
iphone5s)').click(function () {
                window.location.href = 'iphone3gs'
            });

        if (q1 == "iphone5") {
            $('.show(iphone5)').val('.hide(iphone3gs iphone4s iphone4 
iphone5s)').click(function () {
                window.location.href = 'iphone3gs'
            });

        if (q1 == "iphone5s") {
            $('.show(iphone5s)').val('.hide(iphone3gs iphone4s iphone5 
iphone4)').click(function () {
                window.location.href = 'iphone3gs'
            });

jsfiddle の完全なコードは次のとおりです: http://jsfiddle.net/wLY7C/3/

編集なしのコード: http://jsfiddle.net/nwxLM/

4

1 に答える 1

0

あなたのコードはすべてめちゃくちゃです!わかりやすい変数名とID名を使用してください。

ここにデモがあります。各質問に対して任意の回答を選択して、何が起こるかを確認してください。ボタンのテキストはq1 q2 q3 q4その順序です。

q4実際に電話タイプの場合は色を確認するために使用しているので、そうではありません。問題を理解できるように変更しました。

$('#next_button').val("" + q1 + " " + q2 + " " + q3 + " " + q4); return;

//now check the values to display a different link for the desired  configuration
if (q1 == "AT&T" && q2 == "8GB" && q3 == "Black" && q4 == "iPhone-3GS") {
     $('#next_button').val('att 8gb black').click(function () {
          window.location.href = 'http://google.com/'
      });
} 

非表示の要素を表示するには を使用$(selector).show()し、要素を非表示にするには を使用します$(selector).hide()。要素に指定したクラス名と値を持つ ID と混同しないでください。

于 2013-09-05T18:23:09.907 に答える