使用onChange在jquery中选择菜单

时间:2009-09-01 11:42:46

标签: php jquery

我的下面的代码工作正常,用于填充动态<select>的{​​{1}}项 问题是,我最终得到3 <options>说:One / Two / Three然后我选择第一个<options>,这样我就可以调用jquery代码来填充下一个菜单。一个已经是菜单中的<option>项,因此它不会被识别为onChange事件。

所以我需要选择Two然后One来调用onChange for One。

我应该使用什么而不是onChange吗?或者我应该将空白<selected>项作为默认值?总会发生变化吗?

<option>

3 个答案:

答案 0 :(得分:1)

事实上,我在上周工作的网页上遇到了同样的问题。我将onChange函数分开并调用document.ready,以便立即使用First selected值调用它。

$(function()
{
    ChangeFunction();
});

$('#job').change(ChangeFunction);

function ChangeFunction()
{
    $.get('ajax/employee_menu.php', { job: $('#job').val() },      
    function(data) 
    {
        //load the <options> into the element
        $("#employee").html( data );
        // show the menu once loaded
        $("#employee").css({ "display" : "inline" });
    });
}

答案 1 :(得分:0)

不同的浏览器为<select />元素事件提供不同的支持。您可以使用onclick事件,但仅在Firefox中完全支持它。其他浏览器不支持它。

最好使用onchange事件并提供默认选项。或者,您可以使用jQuery将<select />标记更改为纯粹基于HTML的组合框,就像在此jquery.combobox插件中一样。这可能更适合您的目的。

当前时间下降对标准事件的持续支持没有任何接近(不幸的是,过去几年没有)。

答案 2 :(得分:0)

您可以使用PHP预先填充第二个选择,因此页面也会使用OPTION个元素进行第二次选择。无论如何,这就是我要做的。