0

in my code i am creating a drop down box and storing the changed value of the drop down in hidden variable.

<!DOCTYPE html>
<html>
<head>
  <style>

  div { color:red; }
  </style>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
  <select id="sweets">
    <option>Chocolate</option>
    <option selected="selected">Candy</option>

    <option>Taffy</option>
    <option selected="selected">Caramel</option>
    <option>Fudge</option>
    <option>Cookie</option>

  </select>
  <input type="hidden" id="inputfield">
  <div></div>
<script type="text/javascript">
$(document).ready(function() {
  $("#sweets").change(function() {
    var var_name = $(this).val();
    $('input[id=inputfield]').val(theValue);
      }
    });
  });
});
</script>
</body>
</html>


<?php

if(isset($_POST['form']))
echo $_POST['inputfield'];
?>

once the combo box is changed the php should get the hidden field value and i ve to perform db transaction. again i need to load another drop down box based on the selected value.. Can you guide me

4

3 に答える 3

1

隠しフィールドを使用してすべての馬の取引をバイパスし、ajax 経由で直接 php に送信できます。

$(document).ready(function() {
  $("#sweets").change(function() {
    $.post('myphpfile.php', {sweet : $(this).val() });
  });
});

myphpfile.php は、「sweet」という名前の投稿として値を受け取ります

于 2012-09-12T02:20:23.677 に答える
0

Unless I'm misunderstanding, shouldn't

$('input[id=inputfield]').val(theValue);

be

$('input[id=inputfield]').val(var_name);

?

于 2012-09-12T02:17:41.320 に答える
0

post メソッドと action 属性を追加して、select 要素と hidden 要素を form 要素にラップできます。隠しフィールドに name="hidden field" のような名前を付けて、post 変数でアクセスできるようにします。

<form action="currentpage.php" method="post">
 <select id="sweets">
    <option>Chocolate</option>
    <option selected="selected">Candy</option>

    <option>Taffy</option>
    <option selected="selected">Caramel</option>
    <option>Fudge</option>
    <option>Cookie</option>

  </select>
  <input type="hidden" id="inputfield" name="hiddenfield"/>
  <input type="submit" value="Submit" name="submit"/>
</form>

変更イベントが実行されて非表示フィールドが更新され、php で送信すると、次のことができます。

if(isset($_POST["submit"]))
{
   $val = $_POST["hiddenfield"] ;
}
于 2012-09-12T02:19:09.290 に答える