处理 select 列表以在更改 selected 选项时触发事件
Handling select list to trigger an event when changing selected option
我正在设置投诉管理系统,当涉及到投诉列表时,我想给 table 的每一行一个改变当前处理此问题的人的方法,我设置 select 菜单已经获取所有员工,然后当我 select 列表中的任何一个时,这应该是我未来脚本的触发器。
我试过 .change fuction .trigger 但没有成功
var pracownicy = [];
$('#pobierz').click(function() {
//
$.ajax({
type:"GET",
url:"pobierz_pracownikow.php",
contentType:"application/json; charset=utf-8",
dataType:'json',
async:false,
success: function(json) {
for(var klucz in json)
{
var wiersz = json[klucz];
var pracownik={id:wiersz[0],dane_pracownika:wiersz[1]};
pracownicy.push(pracownik);
}
//console.log(JSON.stringify(pracownicy));
//console.log(pracownicy.length);
//console.log(pracownicy[0].dane_pracownika);
},
error: function(blad) {
alert( "Wystąpił błąd");
console.log(blad);
}
});
然后使用此数组制作 select 列表
$.ajax({
type:"GET",
url:"pobierz.php",
contentType:"application/json; charset=utf-8",
dataType:'json',
success: function(json) {
var tablice="<table id='tablePreview' class='table table-sm table-hover'><thead><tr><th>NR reklamacji</th><th>Ilość reklamacji</th><th>Klient</th><th>Osoba zajmująca się</th> <th>Dokument</th><th>Nazwa Firmy</th> <th>Data</th> <th>Kierowca</th></tr></thead>";
for (var klucz in json)
{
var wiersz = json[klucz];
var nr = wiersz[0];
var ile = wiersz[1];
var klient = wiersz[2];
var pracownik = wiersz[3];
var fv = wiersz[4];
var firma = wiersz[5];
var data = wiersz[6];
var kierowca = wiersz[7];
lista_prac="<select class='browser-default custom-select selectpicker'>";
// tablice+="<option selected>"+pracownik+"</option>";
for(var i=0;i<pracownicy.length;i++)
{
lista_prac+="<option ";
//console.log(pracownik+" "+pracownicy[i].dane_pracownika);
if(pracownik==pracownicy[i].dane_pracownika)
{
lista_prac+="selected";
}
lista_prac+=" id="+nr+" value='"+pracownicy[i].id+"'>"+pracownicy[i].dane_pracownika+"</option>";
}
lista_prac+="</select>";
tablice+="<tr><td>"+nr+" </td><td> "+ile+"</td><td> "+klient+"</td><td>"+lista_prac+"</td><td> "+fv+"</td> <td> "+firma+"</td> <td> "+data+"</td> <td> "+kierowca+"</td></tr>";
}
tablice+="</tbody></table><br>";
$('#wykaz').append(tablice);
我没有从控制台获得任何反馈,就像它从未被触发过一样。这可能是由于使用 ajax 使用 selection 列表打印数据 dable 引起的吗?
用过
function changeval(sel)
{ alert(sel.value);}
在 $(document).ready(function()
之外并调用了 select 按钮内的函数,它正在工作
我正在设置投诉管理系统,当涉及到投诉列表时,我想给 table 的每一行一个改变当前处理此问题的人的方法,我设置 select 菜单已经获取所有员工,然后当我 select 列表中的任何一个时,这应该是我未来脚本的触发器。
我试过 .change fuction .trigger 但没有成功
var pracownicy = [];
$('#pobierz').click(function() {
//
$.ajax({
type:"GET",
url:"pobierz_pracownikow.php",
contentType:"application/json; charset=utf-8",
dataType:'json',
async:false,
success: function(json) {
for(var klucz in json)
{
var wiersz = json[klucz];
var pracownik={id:wiersz[0],dane_pracownika:wiersz[1]};
pracownicy.push(pracownik);
}
//console.log(JSON.stringify(pracownicy));
//console.log(pracownicy.length);
//console.log(pracownicy[0].dane_pracownika);
},
error: function(blad) {
alert( "Wystąpił błąd");
console.log(blad);
}
});
然后使用此数组制作 select 列表
$.ajax({
type:"GET",
url:"pobierz.php",
contentType:"application/json; charset=utf-8",
dataType:'json',
success: function(json) {
var tablice="<table id='tablePreview' class='table table-sm table-hover'><thead><tr><th>NR reklamacji</th><th>Ilość reklamacji</th><th>Klient</th><th>Osoba zajmująca się</th> <th>Dokument</th><th>Nazwa Firmy</th> <th>Data</th> <th>Kierowca</th></tr></thead>";
for (var klucz in json)
{
var wiersz = json[klucz];
var nr = wiersz[0];
var ile = wiersz[1];
var klient = wiersz[2];
var pracownik = wiersz[3];
var fv = wiersz[4];
var firma = wiersz[5];
var data = wiersz[6];
var kierowca = wiersz[7];
lista_prac="<select class='browser-default custom-select selectpicker'>";
// tablice+="<option selected>"+pracownik+"</option>";
for(var i=0;i<pracownicy.length;i++)
{
lista_prac+="<option ";
//console.log(pracownik+" "+pracownicy[i].dane_pracownika);
if(pracownik==pracownicy[i].dane_pracownika)
{
lista_prac+="selected";
}
lista_prac+=" id="+nr+" value='"+pracownicy[i].id+"'>"+pracownicy[i].dane_pracownika+"</option>";
}
lista_prac+="</select>";
tablice+="<tr><td>"+nr+" </td><td> "+ile+"</td><td> "+klient+"</td><td>"+lista_prac+"</td><td> "+fv+"</td> <td> "+firma+"</td> <td> "+data+"</td> <td> "+kierowca+"</td></tr>";
}
tablice+="</tbody></table><br>";
$('#wykaz').append(tablice);
我没有从控制台获得任何反馈,就像它从未被触发过一样。这可能是由于使用 ajax 使用 selection 列表打印数据 dable 引起的吗?
用过
function changeval(sel)
{ alert(sel.value);}
在 $(document).ready(function()
之外并调用了 select 按钮内的函数,它正在工作