10/10/2018, 10:40

[help] ajax gọi file php chứa code js không được ?

file index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<script type="text/javascript">
function ajax_innerHTML__dkl(duong_dan,id)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById(id).innerHTML=xmlhttp.resp onseText;
}
}
xmlhttp.open("GET",duong_dan);
xmlhttp.send();
}
</script>
<div id="e"></div>
<script type="text/javascript">
ajax_innerHTML__dkl("1.php","e");
</script>
</body>
</html>
file 1.php :
<?php
echo "day la file 1.php";
?>
<script type="text/javascript">
alert("chao");
</script>
mình gọi ajax tới file 1.php nhưng nó chỉ thuc hiện code php mà không thuc hiện code js (câu alert khong chạy)

bạn nào bít cái này xin giúp đỡ
thuyduongcd viết 12:41 ngày 10/10/2018
JS là do browser thực hiện, làm sao server chạy được mà đòi.
jdkhang viết 12:56 ngày 10/10/2018
bổ sung thêm ý của bạn thuyduongcd, để mã javascript chạy trong file 1.php thì thêm mã html cho nó, để nó trả về trình duyệt chạy js:
file 1.php
Code:
<html>
<body>
<?php
echo "day la file 1.php";
?>
<script type="text/javascript">
	alert("chao");
</script>
</body>
</html>
dokhacluan viết 12:56 ngày 10/10/2018
chẳng lẽ truong hợp nhu thế này thì bó tay ah , nếu không de js dc vào thì nhìu hiệu ứng khong làm dc lắm (các hieu ung chu yếu la cua js)
jdkhang viết 12:47 ngày 10/10/2018
Nếu là các hiệu ứng, các event thì bác xử lý phía client trong mã js mới đúng chứ?
Còn nếu muốn dùng js để xử lý, tính toán dữ liệu thì mình xử lý trước ở sự kiện xmlhttp.responseText rồi mới xuất kết quả ra.
dokhacluan viết 12:45 ngày 10/10/2018
@jdkhang : mình sua lai file 1.php theo của cau , thấy cung khong chay code dc
nếu xử lý truoc xmlhttp.responseText thì cung dc , tại mình đang viết hiệu ứng tab javascript , mình thì viết xong nó rồi nhưng đang chuyển nó dần sang ajax tab , tuy nhiên mình lại bi kẹt cái chỗ getElementsByTagName ;;
nói chung sau khi viết nếu chuyển lại code truoc xmlhttp.responseText tuy làm cũng dc nhưng rất mệt duong như là phải viết lại từ đầu cái tab đó , còn nêu có cách nào viết dc js trong php thì vấn đề sẽ giải quyết don gian hơn
honnhienh viết 12:50 ngày 10/10/2018
chẳng hiểu bác viết tab ajax như thế nào mà cần tới bên server phải sử lý javascript. bác cũng biết là javascript trong ajax là đảm nhiệm phía client tương tác với server bác lại đem nó cả sang server mình thấy hơi lạ.
dokhacluan viết 12:52 ngày 10/10/2018
bạn muốn bít thì bạn cứ viết code tab ajax đi sẽ hỉu , chứ h giải thích thì đuối quá
nói chung việc viết code ban đầu thì nhìn vào người ta cảm thấy dễ , nhưng bắt tay vào viết thì mới phát sinh ra nhìu vấn đề khác nhau khiến nguoi ta dễ bị 'khùng' , không bít bạn có cảm thấy vậy không chứ mình thì có

bổ sung thêm nữa là cậu đọc lại cái trả lời của tớ ở phía trên cậu
s.code viết 12:42 ngày 10/10/2018
Mình có cảm thấy. Nhưng đó là chuyện của nhiều năm về trước.

@Chủ thớt: Không nhất thiết phải xuất javascript trong khi load ajax vậy đâu. Còn nhiều giải pháp khác mà.

Tốt nhất nên đưa ra một demo rồi anh em hỗ trợ cho. Tôi hiểu ý chut thớt muốn vì thời tôi mới làm quen với ajax tôi đã từng mắc phải.
dokhacluan viết 12:48 ngày 10/10/2018
@s.code : mình sẽ su dung giải pháp xử lý truoc xmlhttp.responseText , sau này sẽ hỏi th6em nếu không thành hi
Bài liên quan
0