Jquery/PHP:Javascript函数无法运行
请原谅我拙劣的标题技巧。我希望运行一个简单的javascript函数,目前只返回来自php页面的回音。我已链接到函数,它已到达函数,但未能完成。我不认为我的代码有任何明显的错误,但什么都没有发生 Javascript函数:Jquery/PHP:Javascript函数无法运行,javascript,php,jquery,Javascript,Php,Jquery,请原谅我拙劣的标题技巧。我希望运行一个简单的javascript函数,目前只返回来自php页面的回音。我已链接到函数,它已到达函数,但未能完成。我不认为我的代码有任何明显的错误,但什么都没有发生 Javascript函数: <script type="text/javascript"> function PopulateBoxes(){ $.post('PopulateBoxes.php', {date: SelectTourForm.lst_MonthDro
<script type="text/javascript">
function PopulateBoxes(){
$.post('PopulateBoxes.php', {date: SelectTourForm.lst_MonthDrop.value },
function(output){
$('#txt_Duration').hmtl(output).show();
}
);
}
</script>
populateBox.php:
<?php
echo "This is a test";
?>
下拉菜单:
<form id="SelectTourForm" style="margin:5px;">
<table border="0" align="center" width="100%">
<tr>
<td>
<label style="color:#FFF; font:Georgia, 'Times New Roman', Times, serif; font-size:20px; margin-left:10px; margin-top:25px">Select Tours Details</label>
</td>
</tr>
<tr>
<td>
<select name="lst_MonthDrop" style="background-color:#FF9933; color:#FFF; border:none; margin-top:10px; margin-left:10px;" onchange="PopulateBoxes();">
<option>Please Select</option>
<?php
include 'populatedrodown.php';
foreach ( $results as $option ) :
?>
<option value="<?php echo $option->Date; ?>"><?php echo $option->Date; ?></option>
<?php endforeach; ?>
</select>
<input type="submit" name="btn_TourSearch" id="btn_TourSearch" value="Search" style="background:#009300; border-radius:5px; border-color:#009300; color:#FFF;margin-left:5px;" />
</td>
</tr>
<tr>
<td></td>
</tr>
</table>
<p> </p>
</form>
提前感谢。您的错误出现在SelectTourForm.lst_MonthDrop.value,按原样使用,JavaScript无法识别它 我测试了这个供您参考,并且工作: 由于lst_MonthDrop只有名称,没有id,我们通过以下方式获取其值:
$("select[name=lst_MonthDrop]").val()
以下是测试结构:
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<script>
function PopulateBoxes(){
$.post('PopulateBoxes.php',
{date: $("select[name=lst_MonthDrop]").val()},
function(output){
$('#txt_Duration').html(output).show();
});
}
$(document).ready(function () {
// just for test
PopulateBoxes();
});
</script>
</head>
<body>
<div id="txt_Duration"></div>
<?php
// your form here...
?>
</body>
</html>
我得到了这个截图:
问题:
1:hmtl应该是html
2:SelectTourForm.lst_MonthDrop.value应为$select[name=lst_MonthDrop].val
3:显示的html中没有id为txt_Duration的元素。创造它
4:populatedrodown.php可能拼写错误。缺少字母p?firebug/javascript控制台显示了什么?执行PopulateBox的是什么,PopulateBox在哪里定义?html拼写错误为hmtl@peterchon谢谢,但不幸的是,它没有解决我的问题。但是它确实有帮助。SelectTourForm.lst\u MonthDrop在哪里?SelectTourForm.lst\u MonthDrop.value是在id为SelectTourForm的表单中定义的,该表单包含id为lst的表单控件_MonthDrop@KevinB,我已经更新了我的答案,这是合理的。我已经更正了1号和2号。数字3已创建,但在同一页上的另一个表单中希望不会影响它,我知道我拼错了drop,但我通过复制和粘贴确保了其他地方的拼写都是正确的。@Seatter您确定您的表单中包含了jquery吗?提示:始终使用浏览器的element inspector和它的Net选项卡来查看发送和接收的数据。code.jquery.com/jquery-1.10.2.min.js>这就是我在应用程序中使用的js文件。