如何在javascript中使用模糊函数调用我的onchange函数

时间:2009-10-09 10:06:55

标签: javascript

我的下拉列表中已经附加了模糊功能,现在我想在javasript中调用模糊函数后调用另一个函数onchange。

<select onchange="CheckAccommodation(this)" onblur="return UpdateFormSelect('UpdatePrice.aspx', 'BookNow_accommodation1', 'select', 'BookNow_accommduration');javascript:test()" id="BookNow_accommodation1" name="BookNow:accommodation1">

现在我想在模糊完成后调用 javascript:test()

请建议!

感谢。

最诚挚的问候, YUV

2 个答案:

答案 0 :(得分:2)

@Ghommey的建议将起作用:

<select onchange="CheckAccommodation(this)" onblur="return 
    UpdateFormSelect('UpdatePrice.aspx', 'BookNow_accommodation1', 
     'select', 'BookNow_accommduration');test()" id="BookNow_accommodation1" 
     name="BookNow:accommodation1">

无论您从UpdateFormSelect返回什么,它都能正常工作。

<击>

<击>
function onChangeHandler(){
    //.........
}

$("SELECT_ID").blur(function(){
    //handle blur

    //call on change handler
    onChangeHandler();
});

<击>

答案 1 :(得分:0)

  

现在我想在模糊完成后调用我的javascript:test()

然后在第一个语句中删除'return',允许它落到第二个语句:

onblur="UpdateFormSelect('UpdatePrice.aspx', 'BookNow\_accommodation1', 'select', 'BookNow\_accommduration');test()"

你可以放return test(),但实际上onblur不需要返回任何内容。 <a onclick>经常需要return false来停止跟踪链接,但除此之外,您通常不需要事件处理程序的任何返回值。

放入事件处理程序也有点拗口。你可以通过打破JavaScript来获益:

<select id="BookNow_accommodation1" name="BookNow:accommodation1">
    ...
</select>

<script type="text/javascript">
    var acc1= document.getElementById('BookNow_accommodation1');
    acc1.onchange= function() {
        CheckAccommodation(this);
        // or just move the body of CheckAccommodation here
    };
    acc1.onblur= function() {
        UpdateFormSelect('UpdatePrice.aspx', 'BookNow_accommodation1', 'select', 'BookNow_accommduration');
        test();
    };
</script>