2013-09-19 5 views
0
<script> 
    $(function() { 
     $("select[name='CusList']").removeAttr('multiple'); 
     $("select[name='CusList']").attr('size', '8'); 
     $("select[name='CusList']").find('option:first').attr('selected', 'selected'); 
     //fx(); 
    }); 

    function fx() { 
     var resid = $("select[name='resourcename']").val(); 
     alert(resid);    
    } 
</script> 

@Html.ListBox("CusList", ((List<SelectListItem>)ViewData["Customer"]), new { @class = "k-list"}) 

Я попытался позвонить fx() из pageload (на контроллере), а также внутри функции(). Оба предупреждения, как undefinedВыбранный элемент списка: undefined

<script> 
    $(document).ready (function(){ 
     $('#CusList').bind("click", function() { 
      debugger; 
      var resid = document.getElementById('CusList'); 
      var id = resid.options[resid.selectedIndex].value; 
      alert(id); //this gives me id correcly, so ly listbox is correct for sure 
     }); 
    }); 
</script> 

Пожалуйста, помогите.

ответ

1

В функции fx() вы ищете select имени resourcename, но ваш C# код создает один называется CusList.

Попробуйте это:

$(function() { 
    $("select[name='CusList']") 
     .removeAttr('multiple') 
     .attr('size', '8') 
     .find('option:first').attr('selected', 'selected'); 
    fx(); 
}); 

function fx() { 
    var resid = $("select[name='CusList']").val(); 
    alert(resid);    
} 
+0

Thankyou, я использую два кода образца, есть anyother способ достичь ListBox выбранного элемента вместо привязки? – gs11111

Смежные вопросы