10/10/2018, 11:45

Lấy mảng php đưa vào hàm javasript

<head>
<script language="javascript">
function select(a)
{
// mình định xử lí: lấy từng phần tử của mảng a kiểm tra, nếu nào tử nào trong cơ sở dữ liệu được check thì trên đây phải được check
}
</script >
<head>
<body><?php

$a=array();
$a[0]="a";
$a[1]="b";
$a[2]="c";
$a[3]="d";

?>
<input type ="checkbox" name="check[]" value="1" onclick="select('<?php echo $a ?>')">
</body>
Mình muốn đem các phần tử của mảng a lên hàm js phía trên , lấy từng phần tử xét nếu trong cơ sở dữ liệu nó được check thì trên hàm này nó phải được check Các bạn giúp mình với
BnoL viết 13:57 ngày 10/10/2018
Code:
<input type ="checkbox" name="check[]" value="1" onclick="select(<?php echo json_encode($a) ?>)">
meoitt viết 13:55 ngày 10/10/2018
Đây là đoạn code của mình

ở trong <head>
<script language="javascript">
function selectupdate(<?php echo $id ?>)
{
<?php echo json_decode ($id)?>

// chuyen mang cua $a thanh mang cua js
var j=0;
<?php echo $k=0;?>
var test = new Array(<?php echo count($id)?>);
for(j=0;j<test.length;j++)
{
test[j]=<?php echo $id[$k]?>;
<?php echo $k++;?>
}
var i=0;

for(var q=0;q<document.a.cb.length;q++)
{
for(i=0;i<test.length;i++)
{
if(document.a.cb[q].value==test[i])
{
document.a.cb[q].checked==true;
}
}
}


</script>

Ở trong <body>

<?php
$id=array();
$sqldv="select * from dichvu ";
$kqdv=mysql_query($sqldv,$link);
$dem1=@mysql_num_rows($kqdv);
if($dem>0)
{
for($j=0;$j<$dem1;$j++)
{
$row=@mysql_fetch_array($kqdv);
$tendv=$row["TENDV"];
$madv=$row["MADV"];
echo "$tendv, ";
$id[j]=$madv;

}
}
else
{
$id="";
}

?>

<input type ="checkbox" name="check[]" value="1" onclick="selectupdate('<?php echo json_encode($id) ?>')">
Các bạn xem hộ mình với
mr.mabu viết 13:51 ngày 10/10/2018
ax,ko hiểu bạn hỏi j,tung code lên xong xem hộ mình với
Vậy nó sai hay làm sao ,có lỗi j bạn post lên chứ
mà sao ko dùng Json_parse để đọc cái mảng truyền vào hàm js rùi dùng vòng lặp for mà truy xuất các phần tử mảng
meoitt viết 13:58 ngày 10/10/2018
Được gửi bởi mr.mabu
ax,ko hiểu bạn hỏi j,tung code lên xong xem hộ mình với
Vậy nó sai hay làm sao ,có lỗi j bạn post lên chứ
mà sao ko dùng Json_parse để đọc cái mảng truyền vào hàm js rùi dùng vòng lặp for mà truy xuất các phần tử mảng
Mình đã ghi câu hỏi phía trên cùng của bài rùi đó bạn, mình muốn đem mảng của $a (đây là mảng php )lên hàm js phía trên rùi từ mảng $a này chuyển sang mảng js , sau đó lấy phần tử trong mảng js, phần tử nào có trong mảng js sẽ được hiển thị
rootkit viết 13:59 ngày 10/10/2018
trong php có hỗ trợ JSON, bằng cách encode một mảng a trong php bằng json_encode sau đó xuất ra trình duyệt -> javasciprt hiểu một biến có cấu trúc JSON là một object.

<?
$a = array('a'=>123,'b'=>456);
?>
<script>
b = <?php echo json_encode($a);?>;
// de lap qua cac phan tu cua oject nay thi sai vong lap for..in
//http://www.w3schools.com/js/js_loop_for_in.asp
</script>
jico_sieuquay89 viết 13:47 ngày 10/10/2018
Nếu bạn biết Jquery thì sử dụng hàm getData = $.parseJSON(biến joson đc de);
Ví dụ ở php bạn json_encode($một mảng); bạn truyền tới một hàm trong js!rồi dùng cái hàm trên để lấy giá trị.
meoitt viết 13:50 ngày 10/10/2018
Mình đã dùng hàm json_encode và json_decode nhưng vẫn không được
mr.mabu viết 13:52 ngày 10/10/2018
dùng json_encode thì trong JS phải Json.parse chứ decode cái j nữa
muoik6h viết 14:01 ngày 10/10/2018
thanks bác rootkit nhiều nhé, làm theo cách bác okie lun !
<?php
$a=aray();
?>
<javascript>
var ar=<?php echo json_encode($a); ?>
</>
Bài liên quan
0