কেউ কি দয়া করে আমাকে বলতে পারেন যে কীভাবে রিটার্ন কী টিপানো হয় এবং যদি ফর্মটিতে কোনও বোতাম না থাকে তখন কীভাবে একটি HTML ফর্ম জমা করবেন? জমা বোতামটি নেই । আমি তার পরিবর্তে একটি কাস্টম ডিভি ব্যবহার করছি।
উত্তর:
আইএমও, এটি সবচেয়ে পরিষ্কার উত্তর:
<form action="" method="get">
Name: <input type="text" name="name"/><br/>
Pwd: <input type="password" name="password"/><br/>
<div class="yourCustomDiv"/>
<input type="submit" style="display:none"/>
</form>
আরও ভাল, যদি আপনি কাস্টম ডিভি ব্যবহার করে ফর্মটি জমা দেওয়ার জন্য জাভাস্ক্রিপ্ট ব্যবহার করছেন তবে এটি তৈরি করতে এবং প্রদর্শন সেট করতে জাভাস্ক্রিপ্ট ব্যবহার করা উচিত: বোতামে কোনও স্টাইল নেই। জাভাস্ক্রিপ্ট অক্ষম এই ব্যবহারকারীরা এখনও জমা বোতামটি দেখতে পাবেন এবং এটিতে ক্লিক করতে পারেন।
এটি উল্লিখিত হয়েছে যে প্রদর্শন: কোনওই আইই ইনপুটটিকে উপেক্ষা করবে না। আমি একটি নতুন জেএসফিডাল উদাহরণ তৈরি করেছি যা একটি স্ট্যান্ডার্ড ফর্ম হিসাবে শুরু হয় এবং জমাটি লুকিয়ে রাখতে এবং নতুন ডিভিটি তৈরি করতে প্রগতিশীল বর্ধন ব্যবহার করে। আমি স্ট্রিপলিং ওয়ারিয়র থেকে সিএসএস স্টাইলিং ব্যবহার করেছি ।
এন্টার কী টিপে ফর্মটি জমা দেওয়ার জন্য এই লাইনগুলির সাথে একটি জাভাস্ক্রিপ্ট ফাংশন তৈরি করুন।
function checkSubmit(e) {
if(e && e.keyCode == 13) {
document.forms[0].submit();
}
}
তারপরে আপনার যেকোন সুযোগের মতো ইভেন্টটি ডিভ ট্যাগে যুক্ত করুন:
<div onKeyPress="return checkSubmit(event)"/>
এটি যাইহোক যাইহোক (সম্ভবত পূর্ববর্তী সংস্করণগুলিও) ইন্টারনেট এক্সপ্লোরার 7 এর ডিফল্ট আচরণ।
আমি বিভিন্ন জাভাস্ক্রিপ্ট / jQuery- ভিত্তিক কৌশল চেষ্টা করেছিলাম, তবে আমার সমস্যা ছিল। ব্রাউজারের অন্তর্নির্মিত স্বয়ংক্রিয়-সম্পূর্ণ তালিকা থেকে নির্বাচন করতে এন্টার কীটি ব্যবহার করা হলে দুর্ঘটনাজনিত জমা দেওয়ার ক্ষেত্রে সর্বশেষতম সমস্যাটি উদ্ভূত হয়। অবশেষে আমি এই কৌশলটিতে স্যুইচ করেছি, যা মনে হয় যে সমস্ত ব্রাউজারগুলিতে আমার সংস্থা সমর্থন করে:
<div class="hidden-submit"><input type="submit" tabindex="-1"/></div>
.hidden-submit {
border: 0 none;
height: 0;
width: 0;
padding: 0;
margin: 0;
overflow: hidden;
}
এটি ক্রিস মারাস্তি-জর্জের বর্তমানে গৃহীত উত্তরের মতো, তবে এড়িয়ে গিয়ে display: none, এটি সমস্ত ব্রাউজারগুলিতে সঠিকভাবে কাজ করছে বলে মনে হয়।
আমি নেগেটিভ অন্তর্ভুক্ত করতে উপরের কোডটি সম্পাদনা করেছি tabindexযাতে এটি ট্যাব কীটি ক্যাপচার করে না। যদিও এই প্রযুক্তিগতভাবে এইচটিএমএল 4 এ বৈধতা দেওয়া হবে না, HTML5 স্পপে বেশিরভাগ ব্রাউজারগুলি ইতিমধ্যে যেভাবে এটি প্রয়োগ করে চলেছে সেভাবে কাজ করার জন্য এটি ভাষা অন্তর্ভুক্ত করে।
<button>ট্যাগটি ব্যবহার করুন । ডাব্লু 3 সি স্ট্যান্ডার্ড থেকে:
বাটন উপাদান দিয়ে তৈরি বোতামগুলি যেমন ইনপুট উপাদানটির সাথে তৈরি বোতামগুলির মতো হয়, তবে তারা আরও উন্নততর রেন্ডারিংয়ের সম্ভাবনা সরবরাহ করে: বাটন উপাদানটিতে সামগ্রী থাকতে পারে। উদাহরণস্বরূপ, একটি বাটন উপাদান যা একটি চিত্র ফাংশন ধারণ করে এবং এমন কোনও ইনপুট উপাদানটির অনুরূপ হতে পারে যার প্রকারটি "চিত্র" তে সেট করা আছে, তবে বাটনের উপাদান ধরণের সামগ্রীতে অনুমতি দেয় allows
মূলত অন্য একটি ট্যাগ রয়েছে, <button>যার কোনও জাভাস্ক্রিপ্ট দরকার নেই , এটিও একটি ফর্ম জমা দিতে পারে। এটি কোনও <div>ট্যাগের মতো ( <img />বোতাম ট্যাগের অভ্যন্তরে অন্তর্ভুক্ত) স্টাইল করা যায় । <input />ট্যাগ থেকে বোতামগুলি প্রায় হিসাবে নমনীয় নয়।
<button type="submit">
<img src="my-icon.png" />
Clicking will submit the form
</button>
তিনটি ধরণের সেট করা আছে <button>; তারা <input>বোতামের ধরণের মানচিত্র
<button type="submit">Will submit the form</button>
<button type="reset">Will reset the form</button>
<button type="button">Will do nothing; add javascript onclick hooks</button>
স্ট্যান্ডার্ড
আমি <button>সাথে ট্যাগ ব্যবহারসিএসএস-স্প্রিটস এবং একটি বিট সিএসএসরঙিন এবং কার্যকরী ফর্ম বোতাম পেতে স্টাইলিং। নোট করুন যে এটির জন্য সিএসএস লেখা সম্ভব, উদাহরণস্বরূপ, <a class="button">লিঙ্কগুলি <button>উপাদানটির সাথে স্টাইলিংয়ের সাথে ভাগ করে ।
আমি বিশ্বাস করি এটিই আপনি চান।
//<![CDATA[
//Send form if they hit enter.
document.onkeypress = enter;
function enter(e) {
if (e.which == 13) { sendform(); }
}
//Form to send
function sendform() {
document.forms[0].submit();
}
//]]>
প্রতিবার কোনও কী চাপলে, ফাংশন এন্টার () কল করা হবে। কী টিপলে কী টিপুন কী (13) এর সাথে মিলে গেলে সেন্ডফর্ম () কল করা হবে এবং প্রথম সম্মুখীন ফর্মটি প্রেরণ করা হবে। এটি কেবল ফায়ারফক্স এবং অন্যান্য মান সম্মতিযুক্ত ব্রাউজারগুলির জন্য।
আপনি যদি এই কোডটি দরকারী মনে করেন, দয়া করে আমাকে ভোট দিতে ভুলবেন না!
আমি এখানে jQuery দিয়ে কীভাবে করব
j(".textBoxClass").keypress(function(e)
{
// if the key pressed is the enter key
if (e.which == 13)
{
// do work
}
});
অন্যান্য জাভাস্ক্রিপ্ট খুব আলাদা হবে না। ক্যাচ "13" এর কী কী টিপস যুক্তি যাচাই করা হচ্ছে যা প্রবেশ কী enter
e.which == 10ভালভাবে ধরতে হবে ।
নিম্নলিখিত স্ক্রিপ্ট ব্যবহার করুন।
<SCRIPT TYPE="text/javascript">
<!--
function submitenter(myfield,e)
{
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
else return true;
if (keycode == 13)
{
myfield.form.submit();
return false;
}
else
return true;
}
//-->
</SCRIPT>
প্রতিটি ক্ষেত্রের জন্য যখন ফর্মটি জমা দেওয়া উচিত যখন ব্যবহারকারী প্রবেশের সময় হিট হয়, নীচে জমা দেওয়া ফাংশনটিতে কল করুন।
<FORM ACTION="../cgi-bin/formaction.pl">
name: <INPUT NAME=realname SIZE=15><BR>
password: <INPUT NAME=password TYPE=PASSWORD SIZE=10
onKeyPress="return submitenter(this,event)"><BR>
<INPUT TYPE=SUBMIT VALUE="Submit">
</FORM>
আমি এই পদ্ধতিটি ব্যবহার করি:
<form name='test' method=post action='sendme.php'>
<input type=text name='test1'>
<input type=button value='send' onClick='document.test.submit()'>
<input type=image src='spacer.gif'> <!-- <<<< this is the secret! -->
</form>
মূলত, আমি কেবল প্রকার চিত্রের একটি অদৃশ্য ইনপুট যুক্ত করি (যেখানে " স্পেসার.জিআইএফ " এটি 1x1 স্বচ্ছ জিআইএফ)।
এইভাবে, আমি এই ফর্মটি 'প্রেরণ' বোতামের সাহায্যে বা কেবল কীবোর্ডে এন্টার টিপে জমা দিতে পারি ।
এই কৌশলটি!
আপনি কেন সাবমিট বাটনে ডিভ সাবমিশন শৈলীগুলি প্রয়োগ করেন না? আমি নিশ্চিত যে এর জন্য একটি জাভাস্ক্রিপ্ট রয়েছে তবে এটি আরও সহজ হবে।
আপনি asp.net ব্যবহার করে থাকেন আপনি ব্যবহার করতে পারেন defaultButton ফর্মে অ্যাট্রিবিউট।
আমি মনে করি আপনার কাছে একটি সাবমিট বাটন বা একটি জমা দেওয়ার চিত্র থাকা উচিত ... আপনার কাছে কোনও "সাবমিট ডিভিভি" ব্যবহারের কোনও নির্দিষ্ট কারণ আছে? আপনি যদি কেবল কাস্টম শৈলীগুলি চান তবে আমার প্রস্তাব করুন <input type="image"...। http://webdesign.about.com/cs/forms/a/aaformsubmit_2.htm
উত্তরগুলি প্রসারিত করা, এটিই আমার পক্ষে কাজ করেছিল, সম্ভবত কেউ এটির কাজে লাগবে।
এইচটিএমএল
<form method="post" action="/url" id="editMeta">
<textarea class="form-control" onkeypress="submitOnEnter(event)"></textarea>
</form>
জে
function submitOnEnter(e) {
if (e.which == 13) {
document.getElementById("editMeta").submit()
}
}
ক্রিস মারাস্তি-জর্জের উদাহরণের মতো, পরিবর্তে ইনলাইন জাভাস্ক্রিপ্ট ব্যবহার করা। মূলত যে ক্ষেত্রগুলির সাথে আপনি প্রবেশের কীটি কাজ করতে চান সেগুলিতে মূলত অন্ক্রিপ্স যুক্ত করুন। এই উদাহরণটি পাসওয়ার্ড ক্ষেত্রে কাজ করে।
<html>
<head><title>title</title></head>
<body>
<form action="" method="get">
Name: <input type="text" name="name"/><br/>
Pwd: <input type="password" name="password" onkeypress="if(event.keyCode==13) {javascript:form.submit();}" /><br/>
<input type="submit" onClick="javascript:form.submit();"/>
</form>
</body>
</html>
যেহেতু display: noneবোতাম এবং ইনপুটগুলি সাফারি এবং আইআই তে কাজ করবে না, তাই আমি খুঁজে পেলাম যে কোনও অতিরিক্ত জাভাস্ক্রিপ্ট হ্যাকের প্রয়োজন না হওয়া সহজতম উপায়টি হ'ল <button />ফর্মটিতে একেবারে অবস্থানযুক্ত করা এবং এটি পর্দার বাইরে রাখা।
<form action="" method="get">
<input type="text" name="name" />
<input type="password" name="password" />
<div class="yourCustomDiv"/>
<button style="position:absolute;left:-10000px;right:9990px"/>
</form>
এটি সেপ্টেম্বর ২০১ of হিসাবে সমস্ত বড় ব্রাউজারের বর্তমান সংস্করণে কাজ করে।
স্পষ্টতই এর পছন্দমতো স্টাইল করার জন্য এটির পুনরুদ্ধার (এবং আরও শব্দার্থগতভাবে সঠিক) <button/>।
"অটোফোকাস" বৈশিষ্ট্যটি ডিফল্টরূপে বোতামটিতে ইনপুট ফোকাস দেওয়ার জন্য কাজ করে। প্রকৃতপক্ষে ফর্মের মধ্যে যে কোনও নিয়ন্ত্রণের উপর ক্লিক করাও ফর্মটিতে ফোকাস দেয়, ফর্মটির প্রত্যাবর্তনের প্রতিক্রিয়া জানানো দরকার। সুতরাং, ব্যবহারকারী যদি ফর্মের মধ্যে অন্য কোনও নিয়ন্ত্রণে ক্লিক না করে তবে আপনার জন্য "অটোফোকাস" তা করে।
সুতরাং, ব্যবহারকারী যদি রিটার্নকে আঘাতের আগে ফর্ম নিয়ন্ত্রণগুলির কোনওটিতে ক্লিক না করে তবে "অটোফোকাস" গুরুত্বপূর্ণ পার্থক্য তৈরি করে।
তবে তারপরেও, জেএস ছাড়া কাজ করার জন্য এখনও আরও দুটি শর্ত পূরণ করতে হবে:
ক) আপনাকে যেতে একটি পৃষ্ঠা নির্দিষ্ট করতে হবে (খালি রেখে দিলে এটি কাজ করবে না)। আমার উদাহরণে এটি হ্যালো.এফপি
খ) নিয়ন্ত্রণটি দৃশ্যমান হতে হবে। আপনি গোপনে এটি পৃষ্ঠা থেকে সরে যেতে পারেন, তবে আপনি প্রদর্শনটি ব্যবহার করতে পারবেন না: কিছুই নয় বা দৃশ্যমানতা: লুকানো। আমি যা করলাম তা হ'ল 200px দ্বারা পৃষ্ঠা থেকে বাম দিকে সরাতে ইনলাইন স্টাইলটি ব্যবহার করা। আমি উচ্চতা 0 পিএক্স তৈরি করেছিলাম যাতে এটি স্থান না নেয়। কারণ অন্যথায় এটি এখনও উপরে এবং নীচে অন্যান্য নিয়ন্ত্রণগুলিকে ব্যাহত করতে পারে। অথবা আপনি উপাদান ভাসা করতে পারে।
<form action="hello.php" method="get">
Name: <input type="text" name="name"/><br/>
Pwd: <input type="password" name="password"/><br/>
<div class="yourCustomDiv"/>
<input autofocus type="submit" style="position:relative; left:-200px; height:0px;" />
</form>