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 源代码放在一个 form 标记中,即

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

页面 checkdb.php 使用发布的数据来更新数据库。

如何添加当前文件中提到的 jquery 代码片段(正在生成带有 html 代码的文件)?我在想人们曾经告诉我在 php 执行过程中不能调用 javascript,我想知道我是否需要使用 ajax get 函数。请提供一些帮助。谢谢你。

4

3 回答 3

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 回答
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 回答
0

抱歉,您的问题是什么?PHP 页面在处理后变成 HTML 页面(用户永远看不到 PHP 源代码),您可以轻松地使用 javascript 来检查值。

于 2012-05-15T03:21:53.210 回答