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 > กรอกข้อมูลให้ครบ 2 หลักแล้วให้ form Submit เองโดยไม่ต้องกดปุ่ม Submit ผมหัดใช้ Java อยู่แต่ทำไม่ได้ รบกวนพี่ๆช่วยตรวจสอบโค้ดให้ผมทีครับ



 

กรอกข้อมูลให้ครบ 2 หลักแล้วให้ form Submit เองโดยไม่ต้องกดปุ่ม Submit ผมหัดใช้ Java อยู่แต่ทำไม่ได้ รบกวนพี่ๆช่วยตรวจสอบโค้ดให้ผมทีครับ

 



Topic : 137092



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



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




Code (PHP)
<html>
<head>
<title></title>
</head>
<body>
<form name="form1" method="post" action="test_page.php">
  <label>
  <input type="text" name="textfield" onKeyPress="myFunction()">
  </label>
  <label>
  <input type="submit" name="Submit" value="Submit">
  </label>
</form>
<script>
function myFunction() {
	var text_value = document.getElementById('textfield').value;
	if (text_value.length =< 2) {
  document.getElementById("form1").submit();   
}
}
</script>
</body>
</html>




Tag : PHP, HTML, JavaScript









ประวัติการแก้ไข
2023-09-12 10:42:18
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2023-09-12 10:41:00 By : supervisors View : 529 Reply : 7
 

 

No. 1



โพสกระทู้ ( 9,587 )
บทความ ( 2 )



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


Code (PHP)
<html>
<head>
<title></title>
</head>
<body>
<?=json_encode($_POST??[])?>
<form name="form1" method="post" action="t.php">
  <label>Caption</label>
  <input type="text" name="textfield" onKeyPress="myFunction(this)">
  <input type="submit" name="Submit" value="Submit">
</form>
<script>
function myFunction(o) {	
	setTimeout(()=>{
		if (o.value.length > 2) {
			if(confirm('submit')){
				form1.submit();
			}
		}
	}, 20);
}
</script>
</body>
</html>


การใช้ onKeyPress ค่าของ object ยังไม่เปลี่ยนแปลงจนกว่าจะ สิ้นสุด function ที่ ถูกเรียกใช้
ดังนั้น เมื่อตรวจสอบค่าแรก มันจะได้ความยาว ไม่ตรงกับที่เรามองเห็น
จึงใช้ timeout เพื่อ รอค่าเปลี่ยนแปลงก่อน








ประวัติการแก้ไข
2023-09-12 15:45:10
2023-09-12 15:46:21
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-09-12 15:39:26 By : Chaidhanan
 


 

No. 2



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



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


ทำได้แล้วครับ ขอบคุณมากๆ เลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-09-12 16:15:08 By : supervisors
 

 

No. 3



โพสกระทู้ ( 4,756 )
บทความ ( 8 )



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


ตอบความคิดเห็นที่ : 1 เขียนโดย : Chaidhanan เมื่อวันที่ 2023-09-12 15:39:26
รายละเอียดของการตอบ ::
ใช้ keyup แทนก็ได้ครับ มันจะยิง event นี้เมื่อปุ่มบนคีย์บอร์ดถูกปล่อยขึ้นแล้ว ตัวอักษรก็จะอยู่ใน input แล้ว

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-09-13 09:18:34 By : mr.v
 


 

No. 4



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



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


ติดปัญหาเรื่องการใช้ document.form1.submit(); มันไป return() form อีกรอบทำให้ submit 2 ครั้ง ทำให้ insert ข้อมูลเบิ้ล 2 ครับ ต่อการกรอก 1 ครั้งครับ แก้ไขยังไงดีครับ
Code (JavaScript)
<script>
function myFunction(o) {	
		if (o.value.length >= 2) {
				document.form1.submit();
		}
}
</script>


Code (PHP)
<input  type="text" name="number" id="number" size="3" onKeyUp="myFunction(this)" autocomplete=off  autofocus>



ประวัติการแก้ไข
2023-09-13 23:10:41
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-09-13 22:15:51 By : supervisors
 


 

No. 5



โพสกระทู้ ( 4,756 )
บทความ ( 8 )



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


ถ้าจะเอามาดัก enter ต้องใช้การดักขณะที่ปุ่มกดลงไป เช่น keydown ( https://developer.mozilla.org/en-US/docs/Web/API/Element/keydown_event )
หมายเหตุ keypress เขาให้เลิกใช้แล้ว ( https://developer.mozilla.org/en-US/docs/Web/API/Element/keypress_event )

เมื่อปุ่มกดลงไปแล้ว เอานิ้วยกขึ้นมา ตรงนั้นเรียก keyup มันจะมาทีหลัง

การทำงานของ enter มันจะจับทันทีที่ keydown ดังนั้นไปดักที่ keyup จึงไม่ทัน

ส่วนอื่นๆนอกนั้นแนะนำให้ใช้ keyup เพราะจะได้ไม่ต้องมาสั่ง delay (setTimeout)
เพราะ delay, setTimeout ก็ไม่ใช่ code blocking ( https://medium.com/swlh/playing-with-javascript-settimeout-11201cd0d0c )
สามารถทำงานข้ามหรือคู่ขนานเป็น parallel ได้.
อันนี้พูดถึงการสั่งงานที่มันทำงานพร้อมๆกันในทีเดียว ค่อนข้างเข้าใจยากสำหรับมือใหม่แต่ว่าไม่แนะนำให้ใช้ เอาตามนี้
ถ้าใช้จนชินแล้วอีกหน่อยไปขั้นยากๆ จะมางงอีกว่าทำไมมันไม่รอ setTimeout ให้เสร็จ ก็ต้องรื้อโค้ดกันวุ่นอีกอยู่ดี...


ประวัติการแก้ไข
2023-09-14 20:24:44
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-09-14 20:24:23 By : mr.v
 


 

No. 6



โพสกระทู้ ( 4,756 )
บทความ ( 8 )



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


เอาไปลองเล่นดู ทำความเข้าใจมันด้วยนะ
https://jsfiddle.net/ax7jw9sp/
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-09-14 20:35:11 By : mr.v
 


 

No. 7



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



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


ครับผม ขอบคุณครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-09-14 22:03:21 By : supervisors
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : กรอกข้อมูลให้ครบ 2 หลักแล้วให้ form Submit เองโดยไม่ต้องกดปุ่ม Submit ผมหัดใช้ Java อยู่แต่ทำไม่ได้ รบกวนพี่ๆช่วยตรวจสอบโค้ดให้ผมทีครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 03
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 อัตราราคา คลิกที่นี่