Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ถามพี่ๆเรื่อง การใช้ ajax auto fill ร่วมกับ ปุ่มเพิ่ม text box ค่ะ



 

ถามพี่ๆเรื่อง การใช้ ajax auto fill ร่วมกับ ปุ่มเพิ่ม text box ค่ะ

 



Topic : 077149

Guest




จากตัวอย่างการเพิ่ม textbox ในหน้านี้
https://www.thaicreate.com/php/forum/002630.html
กับ Ajax auto fill ในหน้านี้
https://www.thaicreate.com/tutorial/ajax-auto-fill-textbox.html

หนูสงสัยค่ะว่า จะใช้ร่วมกันยังไง เพราะ ajax auto fill เขียนฟังก์ชันขึ้นมา การเพิ่ม textbox ก็ต้องเขียนฟังก์ชั่นเหมือนกัน
แล้วเราต้องใส่ OnChange="JavaScript:doCallAjax('txtProductID3','txtProductName3','txtPrice3');">
ในฟังก์ชัน CreateNewRow เหรอคะ
หรือยังไงอ่าคะ



Tag : PHP, MySQL, JavaScript, Ajax







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-04-17 20:03:44 By : Supergirl View : 1189 Reply : 4
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

newCell.setAttribute("OnChange", "doCallAjax('txtProductID3','txtProductName3','txtPrice3');");


ประมาณนี้ครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-04-18 06:27:51 By : webmaster
 


 

No. 2



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

หรือไม่ก็แทรกใน HTML Tag เลยครับ

newCell.innerHTML = "<center><INPUT TYPE=\"TEXT\" SIZE=\"5\" NAME=\"Column5_"+intLine+"\" VALUE=\"\" OnChange=\"JavaScript:doCallAjax('txtProductID3','txtProductName3','txtPrice3');\"></center>"  


ประมาณนี้ครับ ดู Syntax ให้ถูกด้วย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-04-18 06:28:57 By : webmaster
 

 

No. 3

Guest


จากโค้ดนี้
Code (PHP)
<? $link = mysql_connect("localhost", "root", "password");            
        mysql_query("use project;");                                  
    	mysql_query("set NAMES tis620"); 
	$strsql = "select * from nutrients";
	$objquery = mysql_query($strsql); ?>
<script language="javascript">

function CreateSelectOption(ele)
{
var objSelect = document.getElementById(ele);
var Item = new Option("", "");
objSelect.options[objSelect.length] = Item;
<?
while($objResult = mysql_fetch_array($objquery))
{
?>
var Item = new Option("<?=$objResult["NutrientName"];?>", "<?=$objResult["NutrientID"];?>");
objSelect.options[objSelect.length] = Item;
<?
}
?>
}
function CreateNewRow()
{
var intLine = parseInt(document.frmMain.hdnMaxLine.value);
intLine++;
var theTable = document.getElementById("tbExp");
var newRow = theTable.insertRow(theTable.rows.length)
newRow.id = newRow.uniqueID
var newCell
//*** Column 1 ***//
newCell = newRow.insertCell(0);
newCell.id = newCell.uniqueID;
newCell.setAttribute("className", "css-name");
newCell.innerHTML = "<center><SELECT NAME=\"txtnutr_"+intLine+"\" ID=\"txtnutr_"+intLine+"\ value=\"\" OnChange=\"JavaScript:doCallAjax('txtnutr_"+intLine+"','txtuni_"+intLine+"');\"></SELECT></center>";

//*** Create Option ***//
CreateSelectOption("txtnutr_"+intLine)

document.frmMain.hdnMaxLine.value = intLine;

//*** Column 2 ***//
newCell = newRow.insertCell(1);
newCell.id = newCell.uniqueID;
newCell.setAttribute("className", "css-name");
newCell.innerHTML = "<center><INPUT TYPE=\"TEXT\" SIZE=\"5\" NAME=\"txtvolu_"+intLine+"\" ID=\"txtvolu_"+intLine+"\"  VALUE=\"\"></center>";

//*** Column 3 ***//
newCell = newRow.insertCell(2);
newCell.id = newCell.uniqueID;
newCell.setAttribute("className", "css-name");
newCell.innerHTML = "<center><INPUT TYPE=\"TEXT\" SIZE=\"5\" NAME=\"txtuni_"+intLine+"\" ID=\"txtuni_"+intLine+"\"  VALUE=\"\"></center>";
}

function RemoveRow()
{
intLine = parseInt(document.frmMain.hdnMaxLine.value);
if(parseInt(intLine) > 0)
{
theTable = document.getElementById("tbExp"); 
theTableBody = theTable.tBodies[0];
theTableBody.deleteRow(intLine);
intLine--;
document.frmMain.hdnMaxLine.value = intLine;
} 
}  

var HttPRequest = false;

function doCallAjax(fNutrientID,fUnit) {
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 = 'AjaxGetFill.php';
var pmeters = "tNutrientID=" + encodeURI( document.getElementById(fNutrientID).value);

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(fProductName).innerHTML = "..";
//}

if(HttPRequest.readyState == 4) // Return Request
{
var myProduct = HttPRequest.responseText;
if(myProduct != "")
{
var myArr = myProduct.split("|");
document.getElementById(fUnit).value = myArr[0];

}
}

}

}
</script>


ตอนแรกก็ยัง query ข้อมูลมาแสดงใน dropdownlistได้ แต่พอหนูเพิ่มบรรทัด นี้เข้าไป ก็กลายเป็นอย่างภาพข้างล่างเลยค่ะ ไม่ทราบว่าผิดตรงไหนคะ
Code (PHP)
newCell.innerHTML = "<center><SELECT NAME=\"txtnutr_"+intLine+"\" ID=\"txtnutr_"+intLine+"\ value=\"\" OnChange=\"JavaScript:doCallAjax('txtnutr_"+intLine+"','txtuni_"+intLine+"');\"></SELECT></center>";

autofill
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-04-18 13:32:22 By : Supergirl
 


 

No. 4



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


แก้โค้ดให้ใหม่ครับ ลองดูน่ะครับ

Code (PHP)
newCell.innerHTML = "<center><SELECT NAME=\"txtnutr_"+intLine+"\" ID=\"txtnutr_"+intLine+"\" value=\"\" OnChange=\"JavaScript:doCallAjax('txtnutr_"+intLine+"','txtuni_"+intLine+"');\"></SELECT></center>";


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-04-19 16:35:27 By : sakuraei
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ถามพี่ๆเรื่อง การใช้ ajax auto fill ร่วมกับ ปุ่มเพิ่ม text box ค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่