получить выпадающий список атрибутов - PullRequest
0 голосов
/ 01 июня 2011

В приведенном ниже разделе я имею div с именами сотрудников и могу назначить им оценку, мой вопрос в том, что я получил empid для всех выбранных значений в функции getgrade_values. Используя jquery, как получить идентификаторы раскрывающийся список со значением, в котором значения выбираются при щелчке функции оценки

  function getgrade_values(empid)
  {
           var ele='<select id="'+ empid +'" name="emp" style="width:40px;margin:0px 0pt;" >';
           ele +=  '<option value=""></option>';
           ele +=  '<option value="A">A</option>';
           ele +=  '<option value="B">B</option>';
           ele +=  '<option value="C">C</option>';
           ele +=  '<option value="D">D</option>';
           ele +=  '<option value="E">E</option>';
           ele +=  '<option value="F">F</option>';
           ele += '</select>';
        return ele;
  }


  function sendparams(data)
  {
        if(data.status == 1)
        {

           var ele='<tr id="std"><td><b>Evaluate:</b></label>&nbsp;&nbsp;&nbsp;&nbsp;</td></tr>';
           for(var l=0;l<data.emparr.length;l++)
           {
              ele +=  '<tr><td><div id="'+ data.emparr[l].id +'">' + data.emparr[l].name + "</td><td>" + getgrade_values(data.emparr[l].id) + '</div></td></tr>';
           ele+= '<input type="button" value="Evaluate" onclick="evaluate();"';
           }

   }

Ответы [ 2 ]

1 голос
/ 01 июня 2011
var select = $('select[name="emp"]')
var empId = select.attr('id')
alert('empId = '+empId)
select.children('option:selected').each(function() {
    alert('grade selected = ' + $(this).val())
})

ДЕМО: http://jsfiddle.net/hdTEP/

0 голосов
/ 01 июня 2011

В настоящее время у вас будет 2 элемента с id="<employeeId>".Поскольку идентификаторы должны быть уникальными для всей страницы, вам следует добавить тип представляемого вами элемента, например id="<employeeId>_gradeInput", для раскрывающегося списка.Далее, для каждого пользователя кажется, что у вас есть кнопка для отправки оценки.Я бы назвал оценить с идентификатором сотрудника, связанным с этой кнопкой.

function getgrade_values(empid){
    var ele='<select id="'+ empid +'_gradeInput" name="emp" style="width:40px;margin:0px 0pt;" >';
    ..//Remaining code
}

function sendparams(data) {
if (data.status == 1) {
    var ele = 
        '<tr id="std">' + 
            '<td>' + 
                '<b>Evaluate:</b>' + 
            '</td>' + 
        '</tr>';
    for (var l = 0; l < data.emparr.length; l++) {
        var employeeId = data.emparr[l].id;
        ele += 
            '<tr>' +
                '<td>' +
                    '<div id="' + employeeId  + '_divContainer">' +
                        data.emparr[l].name +
                    '</div>' 
                '</td>' +
                '<td>' + 
                    getgrade_values(employeeId)
                '</td>' +
            '</tr>';
        ele += '<input type="button" value="Evaluate" 
                    onclick="evaluate(' + employeeId + ');"';
    }
}

function evaluate(employeeId){
    var gradeValue = $('#' + employeeId + '_gradeInput').val();
    ..//Your other evaluate code here
}
...