|
|
|
สอบถามเรื่อง ajax ครับผม คือในหนึ่งหน้าผมจะมีการใช้ ajax หลายตัวนครับ ตัวแรกใช้ได้ พอมาตัวที่สองมันใช้ไม่ได้อ่ะครับผม |
|
|
|
|
|
|
|
คือผมใช้ ajax ไว้ค้นหาข้อมูลหลายตัวนะครับ เขียนตัวแรกก็ใช้ได้ตามปกติ พอมาตัวที่สองมันนิ่งไม่ไหวติงไรเลยครับผมไม่ทราบว่าเป็นเพราะสาเหตุใดครับ ผมทำพลาดตรงไหนหรือเปล่าครับ ตัว addproductsale คือส่วนที่รันได้ปกติ แต่ searchname ไม่ได้ครับ
นี่ครับโค้ด ajax
Code (JavaScript)
<script type="text/javascript">
function searchname(Type,Name){
//Ajax searchname
HttPRequest = false;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
HttPRequest = new XMLHttpRequest();
if (HttPRequest.overrideMimeType) {
HttPRequest.overrideMimeType('text/html');
}
} else if (window.ActiveXObject) { // IE
try {
HttPRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
HttPRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!HttPRequest) {
alert('Cannot create XMLHTTP instance');
return false;
}
var url = 'include_admin/Searname-ajax.php';
var pmeters = "Type=" + Type+
"&Name=" + Name;
HttPRequest.open('POST',url,true);
HttPRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
HttPRequest.setRequestHeader("Content-length", pmeters.length);
HttPRequest.setRequestHeader("Connection", "close");
HttPRequest.send(pmeters);
HttPRequest.onreadystatechange = function()
{
if(HttPRequest.readyState == 3) // Loading Request
{
document.getElementById("showname").innerHTML = "Now is Loading...";
}
if(HttPRequest.readyState == 4) // Return Request
{
document.getElementById('showname').innerHTML = HttPRequest.responseText;
}
}
}
</script>
<script type="text/javascript">
function addproductsale(ProductID,Qty,Price,Point){
//Ajax sale
HttPRequest = false;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
HttPRequest = new XMLHttpRequest();
if (HttPRequest.overrideMimeType) {
HttPRequest.overrideMimeType('text/html');
}
} else if (window.ActiveXObject) { // IE
try {
HttPRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
HttPRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!HttPRequest) {
alert('Cannot create XMLHTTP instance');
return false;
}
var url = 'include_admin/add_product-sale.php';
var pmeters = "tProductID=" + ProductID+
"&tQty=" + Qty + "&tPrice=" + Price + "&tPoints=" + Point;
HttPRequest.open('POST',url,true);
HttPRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
HttPRequest.setRequestHeader("Content-length", pmeters.length);
HttPRequest.setRequestHeader("Connection", "close");
HttPRequest.send(pmeters);
HttPRequest.onreadystatechange = function()
{
if(HttPRequest.readyState == 3) // Loading Request
{
document.getElementById("addproduct").innerHTML = "Now is Loading...";
}
if(HttPRequest.readyState == 4) // Return Request
{
document.getElementById('addproduct').innerHTML = HttPRequest.responseText;
}
}
}
</script>
ส่วนของส่ง ajax
Code (PHP)
<form action="" method="post" id="formsearchname">
<table border="0" align="center">
<tr>
<td>ค้นหาลูกค้า</td>
<td><input name="txtsearch" type="text" id="txtsearch" width="100" value="<?php if(isset($_REQUEST['txtsearch'])){echo $_REQUEST['txtsearch'];}?>"/></td>
<td><select id="searchcus" name="typename">
<option value="fname" <?php if ($typename=="fname"){echo "selected=\"selected\"";}?>>ชื่อ</option>
<option value="nname" <?php if ($typename=="nname"){echo "selected=\"selected\"";}?>>ชื่อเล่น</option>
</select></td>
<td><input type="button" value="ค้นหา" name="searchname" id="searchname" onclick="JavaScript:searchname(document.getElementById('txtsearch').value,document.getElementById('searchcus').value);" /></td>
</tr>
</table>
</form>
<hr />
<span id="showname">
</span>
<span id="selectproduct">
<table border="0" align="center">
<form action="" id="formproduct" method="post">
<tr>
<td>เลือกสินค้า</td>
<td colspan="4">
<select name="product" id="product">
<option value="0">กรุณาเลือกสินค้า</option>
<?php
$selpro = "select * from product" ;
$resultsel = mysql_query($selpro);
while($sepro=mysql_fetch_array($resultsel)){
$proidshow = $sepro['pro_id'];
$proname = $sepro['pro_name'];
if($proid == $proidshow)
{$sel = "selected";}
else
{$sel = "";}
echo "<option value= '$proidshow' $sel>$proname</option>";
}
?>
</select>
<input type="hidden" id="productid" />
</td>
<td><input type="submit" name="submitpro" id="submitpro" value="เลือก" /></td></form>
</tr>
<tr>
<td>ราคา/หน่วย</td>
<td><input type="text" name="productprice" id="productprice" value=" <?php echo $propriceshow; ?>" /></td>
<td>บาท</td>
<td>คะแนน(VP)</td>
<td><input type="text" name="productpoint" id="productpoint" value=" <?php echo $propointshow; ?>" /></td>
<td>คะแนน</td>
</tr>
<tr>
<td>จำนวน</td>
<td><input type="text" name="productqty" id="productqty" onKeyPress="if (event.keyCode < 48 || event.keyCode > 57 ){event.returnValue = false;}" /></td>
<td>ชิ้น</td>
<td></td>
<td><input type="button" name="submitpro" id="submitpro" value="เพิ่ม" onClick="addproductsale('<?php echo $proid;?>', document.getElementById('productqty').value,document.getElementById('productprice').value,document.getElementById('productpoint').value);" /></td>
<td> </td>
</tr>
</table>
<hr />
</span>
<span id=addproduct>
</span>
Tag : PHP, MySQL, HTML/CSS, JavaScript, Ajax
|
ประวัติการแก้ไข 2013-01-20 22:25:29
|
|
|
|
|
Date :
2013-01-20 22:23:56 |
By :
nutzaaclub |
View :
914 |
Reply :
6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คืออยากจะถามว่า ถ้าผมใช้ โค้ดนี้ แล้วใส่ค่าพารามิเตอร์ให้มันเกตค่า แล้วโหลดน่าเว็บมาจะได้ไหมครับผม เพราะ ข้อมูลที่ต้องการมันต้อง
fact array ออกมาใส่ในตางราง เพราะดูตัวอย่างแบบอื่น เหมือนจะ ให้ส่งค่ากลับมาเฉพาะข้อมูล นะครับผม หรือว่า $.GET data ให้มันก่อนแล้วค่อย load หน้านั้นน้นมาว่างไว้
Code (PHP)
<html>
<head>
<title>ThaiCreate.Com jQuery Tutorials</title>
<script type="text/javascript" src="jquery-1.6.4.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#btn1").click(function(){
$.ajax({ url: "webpage.php" })
.success(function(result) { $("#div1").html(result); })
.error(function() { $("#div1").html("error"); })
.complete(function() { $("#div1").after("Ajax load finished"); });
});
});
</script>
</head>
<body>
<div id="div1"></div>
<input type="button" id="btn1" value="Load">
</body>
</html>
|
ประวัติการแก้ไข 2013-01-21 09:13:12
|
|
|
|
Date :
2013-01-21 09:09:13 |
By :
nutzaaclub |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช้ในรูปแบบนี้จะง่ายกว่าครับ รูปแบบเดียว แต่เปลี่ยน Type ได้ตามชอบใจ
Code (PHP)
$.ajax({
type: "POST",
url: "jQueryAjax1.php",
cache: false,
data: "name=John&location=Boston",
success: function(msg){
alert( "Data Call : " + msg);
$("p").append(msg);
}
});
|
|
|
|
|
Date :
2013-01-21 09:30:40 |
By :
Ex-[S]i[L]e[N]t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณครับผม เดี๋ยยวจะลองทำดูครับ
|
|
|
|
|
Date :
2013-01-21 10:22:49 |
By :
nutzaaclub |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วถ้าผมจะเอาส่วนข้อมูลแย่างนี้มาแสดงจะต้องทำแย่างไรครับผม
Code (PHP)
<table border="2" align="center">
<th width="41" align=center>ลำดับ</th>
<th width="97" align=center>ชื่อ</th>
<th width="97" align=center>สกุล</th>
<th width="158" align=center>ชื่อเล่น</th>
<th width="74" align=center>สถานะ</th>
<th width="74" align=center>เลือก</th>
</tr>
<?php
$i=1;
while($name=mysql_fetch_array($result))
{ $idname = $name['cus_id'];
$fname=$name['fname'];
$lname=$name['lname'];
$nname=$name['nname'];
$status=$name['status'];
if(($i%2)==0)
{ $bg="white";}
else
{ $bg="#C1FFC1";}
echo "<tr bgcolor='$bg'>";
echo "<td align=center>$i</td>";
echo "<td align=center>$fname</td>";
echo "<td align=center>$lname</td>";
echo "<td align=center>$nname</td>";
echo "<td align=center>$status</td>";
echo "<td align=center><a href='admin_Sale.php?id=$idname'>เลือก</a></td>";
echo "</tr>";
$i++;
}
?>
</table>
|
|
|
|
|
Date :
2013-01-21 11:20:40 |
By :
nutzaaclub |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณครับได้แล้ว ครับนั่งปล้ำกับมันตั้งนาน
|
|
|
|
|
Date :
2013-01-21 14:35:52 |
By :
nutzaaclub |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|