2016-04-18 9 views
0

私(gravityform)にはラジオボタンまたはチェックボックスと数値フィールドの2つのフィールドがあります。 数値フィールドに基づいてラジオボタンに値(yesまたはnot)を渡したいので、これを例10のデフォルト値よりも小さい数字で埋めるとラジオボタンのチェックボックスが選択されます「はい」または「しない」と表示されます。 提出の前または後にこれが可能であれば問題ありません。同じフォームのラジオボタンに値を渡す(yesまたはnot)

ありがとうございました。

+0

ようこそスタックオーバーフロー。あなたは、このような一般的な質問をする前に、おそらくあなた自身で最初に試してみるべきです。 –

答えて

0

「キーアップ」というイベントを使用して、ラジオボタンの値を変更できます。次のコードを試してみてください。

<html> 
 

 
<head> 
 
    <script src="https://code.jquery.com/jquery-2.2.3.js" integrity="sha256-laXWtGydpwqJ8JA+X9x2miwmaiKhn8tVmOVEigRNtP4=" crossorigin="anonymous"></script> 
 
    <script> 
 
    $(document).ready(function() { 
 
     $("#numbervalue").on("propertychange change keyup", function() { 
 
     var val = $("#numbervalue").val(); 
 
     if (val > 10) { 
 
      $("#one").prop("checked", false); 
 
      $("#two").prop("checked", true); 
 
     } else { 
 
      $("#one").prop("checked", true); 
 
      $("#two").prop("checked", false); 
 
     } 
 
     }); 
 
    }); 
 
    </script> 
 
</head> 
 

 
<body> 
 
    <form action=""> 
 
    Number: 
 
    <br> 
 
    <input type="number" name="numbervalue" id="numbervalue" value="10"> 
 
    <br> 
 
    <br>Value is more than 10 ? 
 
    <br> 
 
    <input type="radio" name="truth" id="one" value="0" checked>No 
 
    <br> 
 
    <input type="radio" name="truth" id="two" value="1">Yes 
 
    <br> 
 
    </form> 
 
</body> 
 

 
</html>

+0

あなたのソリューションへの注意と、一般的な「キーアップ」ソリューションは、マウスのカット/ペーストイベントを処理しません。右クリック+貼り付けで数字を貼り付けたり、右クリック+カットで現在の数字または数字の一部を切り取ったりすると、キーアップイベントが発生しません。 – mhodges

+0

それを指摘してくれてありがとう..私はそれに応じて私のソリューションを更新しました。 – zaffer

0

はここで何をしようとするために非常に基本的なデモです:

DEMO

基本的な考え方は、あなたが入力フィールドの値を見て、確認したり、それに応じてラジオボタンのチェックを外していることです。

0

数値入力用のイベントハンドラを登録する必要があります。

ピュアJSソリューション:

var radioYes = document.getElementById("choice_1_49_0"), 
    radioNo = document.getElementById("choice_1_49_1"), 
    valueToCheck = 10; 

document.getElementById("input_1_38").addEventListener("change", function() { 
    if (+this.value > valueToCheck) 
     radioYes.checked = true; 
    else 
     radioNo.checked = true; 
}, false); 

JSFiddle

EDIT:あなたのマークアップに応じてコードを更新しました。

+0

okはここに私のhtmlです [コード] 年齢 [code] – Serjej

+0

私はちょうどウルマークアップ。見てみな! –

0

[OK]をおかげで、これは働いていた、素晴らしい!!

<script> 
    $(document).ready(function() { 
     $("#input_1_38").on("propertychange change keyup", function() { 
     var val = $("#input_1_38").val(); 
     if (val > 6575) { 
      $("#choice_1_49_0").prop("checked", false); 
      $("#choice_1_49_1").prop("checked", true); 
     } else { 
      $("#choice_1_49_0").prop("checked", true); 
      $("#choice_1_49_1").prop("checked", false); 
     } 
     }); 
    }); 
    </script> 
関連する問題