09/10/2018, 17:42

Nhờ các bạn giúp đỡ gấp !

Bạn nào có cái java script để lấy các giá trị được chọn trong combo list (<select name="abc" multiple>.... </select>) thì cho mình xin với. Cảm ơn các bạn thật nhiều.
nguyenthu viết 19:49 ngày 09/10/2018
Chào bạn,
Thí dụ đây :
<FORM>
<SELECT NAME="liste" SIZE="1">
<OPTION SELECTED VALUE="">Choisissez</OPTION>
<OPTION VALUE="index.htm">Index</OPTION>
<OPTION VALUE="suscribe.htm">Inscription</OPTION>
<OPTION VALUE="aparaitr.htm">A paraître</OPTION>
</SELECT>
<INPUT TYPE="button" VALUE="Allez" onClick="if (form.liste.selectedIndex != 0) window.open(form.liste.options[form.liste.selectedIndex].value, 'Abonnement', 'scrollbars=yes,status=yes,width=500,height=300'); else alert('Veuillez faire un choix')">
</FORM>
Chúc thành công.
scarlet viết 19:53 ngày 09/10/2018
Cảm ơn anh đã giúp, nhưng em muốn lấy nhiều giá trị được chọn trong list. SELECT ...MULTIPLE anh ạ. Trong ví dụ của anh chỉ chọn được 1 thôi. Em nghĩ phải là một mảng mới nhận hết các giá trị được chọn ví dụ:
form.liste.options[form.liste.selectedIndex].value[i]
Vui lòng giúp em vấn đề này với nhé.
Cảm ơn anh thật nhiều.
bpmtri viết 19:48 ngày 09/10/2018
Nếu list box của bạn là multiple select thì bạn có thể dùng tham khảo đoạn code sau:

Code:
<html>
<head>
<title>Test Multiple Selected List</title>
<script language="JavaScript">
function ShowSelectedItems()
{
	theList = document.myform.liste;
	for (i=0; i < theList.options.length; i++)
	{
		if (theList.options[i].selected)
		{
			alert(theList.options[i].value);
		}
	}
}
</script>
</head>
<body>
<form id="myform" name="myform" action="#">
<select id="liste" name="liste" multiple>
<option value="Hehe">Hehe</option>
<option value="Huhu">Huhu</option>
<option value="Haha">Haha</option>
</select>
<br>
<input type="button" onclick="ShowSelectedItems();" value="Show">
</form>
</body>
</html>
scarlet viết 19:46 ngày 09/10/2018
Cảm ơn bạn đã giúp, scarlet đã đọc đoạn code bạn gửi và đã thực hiện thành công. Nhưng giá trị của list box chỉ được hiển thị. Scarlet muốn lấy các giá trị này để xử lý hoặc nhập vào cho database. Nếu bạn có kinh nghiệm về vấn đề này xin được chỉ giáo. Mình xin cảm ơn bạn. (Scarlet sử dụng PHP để viết ứng dụng Web).
tiger2003 viết 19:57 ngày 09/10/2018
Ghi vào biến ở trang hiện tại, submit vào 1 trang để ghi vào CSDL là được chứ gì?
scarlet viết 19:56 ngày 09/10/2018
Bạn vui lòng chỉ cho mình cách ghi vào biến ở trang hiện tại với? giá trị được lưu vào trong biến của java Script mà mình chẳng biết lấy nó ra trang hiện tại bằng cách nào.
Ví dụ script này lưu giá trị được chọn trong strValues.

Code:
function saveMe() {
  var strValues = "";
  var boxLength = document.frmGroup.lstGroupUser.length; 
  var count = 0;
  if (boxLength != 0) {
    for (i = 0; i < boxLength; i++) {
     if (count == 0) {
      strValues = document.frmGroup.lstGroupUser.options[i].value;
     }
     else {
     strValues = strValues + "," +   document.frmGroup.lstGroupUser.options[i].value;
    }
   count++;
    }
 }
if (strValues.length == 0) {
alert("You have not made any selections");
}
else {
alert("Here are the values you've selected:\r\n" + strValues);
   }
}
Bạn chỉ cho mình cách lấy xâu giá trị strValues này ra với nhé. Mình còn ấm ớ mấy vụ này lắm bạn vui lòng chỉ giúp Scarlet với. Cảm ơn bạn thật nhiều. Khi nào vào Đà Nẵng Scarlet sẽ làm hướng dẫn viên miễn phí :-)).
COTTONBELLY viết 19:55 ngày 09/10/2018
trong form mang tên frmGroup , bạn chèn thêm một doạn code như sau : <input type=hidden name=mydata value="">

phía trên dòng alert("Here are the values you've selected:\r\n" + strValues); | bạn nhập thêm một đoạn mã nhỏ nữa

document.frmGroup.mydata.value = strValues;

khi xử lý dữ liệu ở phía server ( mình chỉ bít php thui ) thì bạn đơn giản là request biến mydata từ $_POST hoặc $_GET , sau đó xài hàm explode() để "phá" chuỗi này ra thành 1 mảng và xử lý bình thường .
scarlet viết 19:53 ngày 09/10/2018
Cảm ơn bạn COTTONBELLY nhiều !
Bài liên quan
0