0

オプションが選択されているかどうかを確認するために、小さなコード スニップを追加したいと思います。これは通常、ページが html の場合は簡単に実行できます。コード スニップは次のようになります。

echo "<td>Language</td>";
echo "<td><select id='language' name='language'>
            <option value=''>Select...</option>
            <option value='en_US'>English(US)</option>
            <option value='en_AU'>English(AU)</option>
            <option value='en_UK'>English(UK)</option>
          </select><span id="info"></span>
      </td>";   

htmlの場合

<script>
   $('#language').change()
   {
     if('Select...'==$('#language').text())
     {
        $('#info').html("Please select a value...");
     }
   }
</script>

[更新]

HTMLコードを生成するために使用される上記のphpソースコードは、

echo "<form action='checkdb.php' method='POST'>
    // all above and more
    </form>"

ページ checkdb.php は、投稿されたデータを使用してデータベースを更新しました。

現在のファイルに記載されているように、jquery コードを追加するにはどうすればよいですか (html コードを含むファイルが生成されています)。PHPの実行中にJavaScriptを呼び出すことはできず、ajax get関数を使用する必要があるのではないかと人々がかつて私に言ったので、私は考えています。助けてください。ありがとうございました。

4

3 に答える 3

1
// Listen, and respond to, the change even on our select
$("#language").on("change", function(e){
  // Set the html content of our info element
  $("#info").html(function(){
    // If the selected option has no value, ask to select a value
    return e.target.value === "" ? "Please select a value." : "" ;
  });
// Trigger upon page load
}).trigger("change");

デモ: http://jsbin.com/owaqaz/2/edit

最後の行に注意してください。これにより、選択要素に現在値がない場合$.trigger("change")、ページはすぐに要素を設定します。#info

于 2012-05-15T03:35:05.797 に答える
1

jQuery を次のように変更します。

$('#language').change(function() {
    if ('Select...' == $('#language option:selected').text()) {
        $('#info').html("Please select a value...");
    }
});​

jsFiddle の例

更新:またはより短いバージョン:

jQuery:

$('#language').change(function() {
    $('#info').html(('Select...' == $('#language option:selected').text()) ? "Please select a value...":"");
});​

jsFiddle の例

于 2012-05-15T03:23:01.963 に答える
0

申し訳ありませんが、あなたの質問は何でしたか? PHP ページは、処理後に HTML ページに変わり (ユーザーは PHP ソース コードを見ることはありません)、javascript を使用して値を簡単に確認できます。

于 2012-05-15T03:21:53.210 に答える