4

私は 2 つの Web ページを持っています。1つはmain.phpで、もう1つはcombo.phpです。ombo.php にはドロップダウン リストが含まれており、このページを main.php に含めました。

私がやりたいことは、誰かがドロップダウンでオプションを選択したときに、選択したアイテムを示すアラート ボックスが表示されることです。

main.php

<html>
  <body>
    <form>
      //some elements
      <?php include 'combo.php';?>
    </form>
  </body>
</html>

コンボ.php

<html>
  <body>
    <form>
      //some elements
      <select name="combo">
        <option value="1">America</option>
        <option value="2">England</option>
        <option value="3">India</option>
        <option value="4">Japan</option>
      </select>
      //some elements
    </form>
  </body>
</html>

私のcombo.phpに変更を加えることができません。onChange イベントとスクリプトは main.php にあるはずです。これを行う方法がわかりません。また、これが可能かどうかもわかりません。この問題に関するヘルプは大歓迎です。ありがとう。

4

4 に答える 4

3

これには Jquery を使用できます。そのためには、このスクリプトを含める必要があります。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
</script>
<script type="text/javascript">
$(document).ready(function() {

    $("#getSelect").change(function() {
        alert($(this).val());
    });

});
</script>

ここで、getSelect は選択コントロールの ID です。

その後、以下の php コードを追加します。

<form>
      //some elements
      <select name="combo" id="getSelect" onChange="return getSelect(this.value)">
        <option value="1">America</option>
        <option value="2">England</option>
        <option value="3">India</option>
        <option value="4">Japan</option>
      </select>
      //some elements
   </form>
于 2013-04-09T05:54:54.557 に答える
2

次のような JavaScript 関数を追加します。

function getValue(val) {
    alert(val);
}

そして、ドロップダウンで、この関数を onChange プロパティに次のように追加します

<select name="combo" onchange="getValue(this.value);">
    <option value="1">America</option>
    <option value="2">England</option>
    <option value="3">India</option>
    <option value="4">Japan</option>
</select>

ドロップダウンの値を変更すると、アラート ボックスに値が表示されます。

于 2013-04-09T04:54:41.177 に答える
1

jQuery を使用できる場合は、いくつかのコードをmain.php

$(document).ready(function() {

    $("#idOfYourSelect").change(function(changeEvent) {
        alert("Your value : " + $(this).val());
    });

});

<select>少なくとも id idOfYourSelect(または名前、または css クラス名 - javascript コードから取得できるもの) があると仮定します。

これにより、イベントにリスナーが追加されchange、値を変更するたびにコールバックが実行されます。

jQuery を使用できない場合は、もう少し複雑になります。ブラウザの違いを利用してaddEventLister、 またはを使用attachEventしてリスナーを追加する必要があります。

attachEvent ドキュメント(古い IE 用)

Firefox、webkit などのaddEventListener

これらすべての違いを処理する jQuery を使用することをお勧めします。

于 2013-04-09T05:03:14.473 に答える
0

それを変更できない場合は、JQueryを使用する場合、次のように追加できます

$('select[name*="combo"]').change(function() {
      var str = $('select[name*="combo"]').val();
      alert (str);

  });

これを $(document).ready(function) に追加します

于 2013-04-09T05:10:30.610 に答える