【问题标题】:Cascading Select Boxes - Jquery级联选择框 - Jquery
【发布时间】:2011-02-18 14:24:23
【问题描述】:

使用 jQuery 动态填充选择框时遇到问题。

基本上,我的代码调用一个填充选择框 (utilityMainChart) 的 php 脚本。假设它为选择框实用程序MainChart 带回了两个选项,我希望下一个选择框(parameterMainChart)填充实用程序MainChart 选择框中第一个选项的选项。

就像现在一样,选择框最初会正确填充,但行 var building = $('#utilityMainChart').val();从不返回选择框的值。这意味着对选择框的任何更改都会导致其下方的选择框变为空白,因为没有拾取任何值。

我的 javascript 代码如下所示:

var data = "1" + "_" + building + "_";
var url = "/charts/data/utilityManagerMenuPopulate.php?data=" + data;
$('#utilityMainChart').load(url);

var building = $('#utilityMainChart').val();
var data = "2" + "_" + building + "_" + utility;
var url = "/charts/data/utilityManagerMenuPopulate.php?data=" + data;
$('#parameterMainChart').load(url);

我的php代码以如下形式返回数据:

<select id="utilityMainChart" name="utilityMainChart">
    <option selected value=1>Electricity</option>
    <option value=3>Water</option>
</select>

任何建议都会很棒。我已经玩了好几个小时了,只是无法让它工作

【问题讨论】:

    标签: php javascript jquery select cascadingdropdown


    【解决方案1】:

    尝试改变

    var building = $('#utilityMainChart').val();
    

    var building = $('#utilityMainChart :selected').val();
    

    编辑:您的 #utilityMainChart 不是唯一的 id,它在 select 和包含 div 的 select 上都存在。所以当你运行上面的代码时,它会得到 div。如果您尝试这样做会有所帮助。

    var building = $('select#utilityMainChart').val();
    

    【讨论】:

    • 刚刚试了一下,现在返回的值不是空白,而是返回未定义。不知道这是否是进步!
    • 你能给个页面链接吗?如果我能通过它可能会更好地提供帮助。
    • 就是图表上方页面底部的下拉框(目前处于调试模式)
    • 更改了我的选择框的 id,但我仍然未定义为返回值。不过还是谢谢。
    • 当我现在在您的页面上运行 $('select#utilityMainChartSelect').val() 时,我会得到数字 3 或数字 1,具体取决于下拉菜单中设置的选项。
    猜你喜欢
    • 2011-03-15
    • 1970-01-01
    • 2014-03-28
    • 2015-04-16
    • 2014-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-04
    相关资源
    最近更新 更多