0

加载页面时不会执行此脚本,只有在不同的下拉选项之间进行更改时才会执行此脚本。我应该怎么做才能使它 .hide() 从一开始就是 case 0: fields?

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" type="text/javascript">
<script>
jQuery(document).ready(function () {

jQuery("select[id='DROPDOWNID']").change(function () {

        var selectedIndex = jQuery("DROPDOWNID']").prop('selectedIndex');

        switch (selectedIndex) {
            case 0:
                jQuery("input[id='IDFROMSHAREPOINT']").closest('tr').hide("fast");

                break;
            case 1:
                jQuery("input[id='IDFROMSHAREPOINT']").closest('tr').show("fast");
                break;
        }
    });
});
</script>
4

2 回答 2

0

试试jQuery("select[id='DROPDOWNID']").trigger("change");。这样你就可以重用你的逻辑。

您的代码如下所示:

jQuery(document).ready(function () {

jQuery("select[id='DROPDOWNID']").change(function () {

        var selectedIndex = jQuery("DROPDOWNID']").prop('selectedIndex');

        switch (selectedIndex) {
            case 0:
                jQuery("input[id='IDFROMSHAREPOINT']").closest('tr').hide("fast");

                break;
            case 1:
                jQuery("input[id='IDFROMSHAREPOINT']").closest('tr').show("fast");
                break;
        }
    });

    jQuery("select[id='DROPDOWNID']").trigger("change");
});
于 2013-09-05T08:57:32.423 回答
0

在更改处理程序之前添加以下行。

jQuery("input[id='IDFROMSHAREPOINT']").closest('tr').hide();

所以代码是

jQuery(document).ready(function ()
{
    jQuery("input[id='IDFROMSHAREPOINT']").closest('tr').hide("fast");

    jQuery("select[id='DROPDOWNID']").change(function ()
    {
        var selectedIndex = jQuery("DROPDOWNID']").prop('selectedIndex');
        switch (selectedIndex)
        {
            case 0:
                jQuery("input[id='IDFROMSHAREPOINT']").closest('tr').hide("fast");
                break;
            case 1:
                jQuery("input[id='IDFROMSHAREPOINT']").closest('tr').show("fast");
                break;
        }
    });
});
于 2013-09-05T08:57:42.270 回答