我想添加一个小代码片段来检查是否选择了一个选项 如果页面是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函数。请提供一些帮助。谢谢。
答案 0 :(得分:1)
将您的jQuery更改为:
$('#language').change(function() {
if ('Select...' == $('#language option:selected').text()) {
$('#info').html("Please select a value...");
}
});
<强> jsFiddle example 强>
更新:或更简短的版本:
jQuery的:
$('#language').change(function() {
$('#info').html(('Select...' == $('#language option:selected').text()) ? "Please select a value...":"");
});
<强> jsFiddle example 强>
答案 1 :(得分: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")
- 如果select元素当前没有值,这将导致页面立即填充#info
元素。
答案 2 :(得分:0)
抱歉,你的问题是什么? PHP页面在处理后变成HTML页面(用户永远不会看到PHP源代码),您可以轻松使用javascript来检查值。