2013-10-28 2 views
-1

в этом fiddleкак передать проверенные значения флажка

У меня есть кнопка добавления, которая при нажатии добавляет исходные данные на новую строку, как указано в кнопке screenshot.The группы используются для создания группы пользователей numbers.Suppose Я хочу создать группу друзей, которая будет содержать номера мобильных телефонов 1-й строки, 2-й строки и последней строки. Поэтому для этого я просто поставлю флажки 1-й строки, 2-й строки и последней строки. Затем, после нажатия кнопки группы, она создаст группу. Имя группы вместе с членами группы (номерами мобильных телефонов) должно быть сохранено в базе данных. Я использую ajax. Пожалуйста, расскажите мне, как передавать мобильные номера выбранных строк. enter image description here Ниже приводится JQuery

var val=0; 
$(document).ready(function(){ 


    $('#btn1').click(function(){ 
     if($(".span4").val()!="") 
     { 
    $("#mytable").append('<tr id="mytr'+val+'"></tr>'); 
    $("#mytr"+val).append('<td class=\"cb\"><input type=\"checkbox\" value=\"yes\" name="mytr'+val+'" checked ></td>'); 

      $(".span4").each(function() { 

      $("#mytr"+val).append("<td >"+$(this).val()+"</td>"); 

       }); 
       val++; 
     } 
     else 
     { 
      alert("please fill the form completely"); 
     } 
       }); 
    $('#btn2').click(function(){ 
     var creat_group=confirm("Do you want to creat a group??"); 
     if(val>1){ 
      alert(creat_group); 


       } 
    }); 


}); 

Что такое группа и почему я хочу это? Предположим, если у меня есть какие-то 100 записей, из того, что некоторые из них Java сотрудник, некоторые из них .net работника и некоторые из них мэйнфреймов Предположим, если я хочу отправить смс только сотруднику Java, если я не являюсь имея группу из 100 записей Мне нужно вручную проверить, кто является java-сотрудниками. Поэтому, чтобы избежать этого, я хочу создавать группы 1 для java, 1 для .net и еще один для мэйнфрейма. Поэтому, чтобы отправлять sms только ява люди, которых я могу выбрать группу Java и отправить смс

+0

Какой бэкэнд (серверный язык) вы используете для ajax? – aleation

+0

@aleation jsp/servlet – SpringLearner

+0

@aleation любые решения? – SpringLearner

ответ

0

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

var obj={};// add this 
$('#btn1').click(function() { 
    if ($(".span4").val() != "") { 
     $("#mytable").append('<tr id="mytr' + val + '"></tr>'); 
     $tr=$("#mytr" + val); 
     $tr.append('<td class=\"cb\"><input type=\"checkbox\" value=\"yes\" name="mytr' + val + '" checked ></td>'); 
     $(".span4").each(function() { 
      $tr.append("<td >" + $(this).val() + "</td>"); 
     }); 
     // add below code 
     var arr={}; 
     name=($tr.find('td:eq(1)').text()); 
     email=($tr.find('td:eq(2)').text()); 
     mobile=($tr.find('td:eq(3)').text()); 
     arr['name']=name;arr['email']=email;arr['mobile']=mobile; 
     obj[val]=arr; 
     // add upto above line 
     val++; 
    } else { 
     alert("please fill the form completely"); 
    } 
}); 

Также Обновление и добавьте ниже код,

$(document).on('click', '#btn2',function() { 
    var creat_group = confirm("Do you want to creat a group??"); 
    if (creat_group) { 
     console.log(obj); 
    }   
}); 

// to get the checked data only 
$(document).on('change','#mytable input:checkbox',function() { 
    if(!this.checked) 
    { 
     key=$(this).attr('name').replace('mytr',''); 
     obj[key]=null; 
    } 
}); 

Demo

+0

спасибо за ответ, в ajax для передачи значений мы пишем ** $. ajax ( { type: "POST", url: "messageSending.JSP», // Ваш полный URL идет здесь данные: {ToNumber: номер, корпус: тзд}, успех: функция (данные, textStatus, jqXHR) { оповещения (данные); }, ошибка: функция (jqXHR) { оповещения (jqXHR.responseStatus); } }); ** в вашем случае, как сделать – SpringLearner

+0

@javaBeginner проход ** данные: OBJ ** в '$ .ajax' –

+0

в AJAX для извлечения мы используем запрос? .getparameter (name), чтобы получить значение. В этом случае как? – SpringLearner

0

Как сказал мой комментарий здесь мой ответ, вам нужно добавить, что к вашему $('#btn2').click():

Working Fiddle

$(document).ready(function() { 
    $('#btn2').click(function() { 
     var checkedRows = $('#mytable').find("input:checked").parent().parent(); 
     var total = checkedRows.length; 
     var info = []; 
     for(i = 0; i < total; i++){ 
      var row = $(checkedRows[i]).children(); 
      var tmpInfo = []; 
       tmpInfo["name"]= row[1].innerHTML; 
       tmpInfo["email"]= row[2].innerHTML; 
       tmpInfo["phone"]= row[3].innerHTML; 
      info.push(tmpInfo); 
     } 

     console.log(info); 

     $.post('yourpage', info, function(){ 
      //on success code, can be an alert or anything you want. 
     }); 
    }); 
}); 

Пояснение: Сначала мы сначала обнаруживаем все отмеченные флажки родительской строки и создаем массив (checkedRows);

Затем мы прокручиваем этот массив (это намного быстрее, чем использование $.each) и добавьте ячейку таблицы 1 2 и 3 в HTML-массив info. (td 0 - ячейка флажка, поэтому нам это не нужно);

Отправьте информацию на ваш сервер, это должен быть массив из n подмассивов (в зависимости от того, сколько строк было проверено), суб-массивы будут содержать имя, адрес электронной почты и телефон.

+0

ничего не происходит, если я нажимаю кнопку группы – SpringLearner

+0

, конечно, нет, у меня нет доступа к вашему серверу, см. Журнал консоли или сочетайте его с кодом и тестом. – aleation

+0

console также показывает пустой – SpringLearner

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