জাভাস্ক্রিপ্ট ব্যবহার করে কীভাবে ফর্ম জমা করবেন?


190

আইডি সহ আমার একটি ফর্ম রয়েছে theFormযার ভিতরে জমা দেওয়ার বোতামের সাথে নিম্নলিখিত ডিভ রয়েছে:

<div id="placeOrder" 
     style="text-align: right; width: 100%; background-color: white;">
    <button type="submit" 
            class='input_submit' 
            style="margin-right: 15px;" 
            onClick="placeOrder()">Place Order
    </button>
</div>

ক্লিক করা হলে, ফাংশনটি placeOrder()বলা হয়। ফাংশনটি উপরের ডিভির অন্তর্নিহিত এইচটিএমএলকে "প্রসেসিং ..." হিসাবে পরিবর্তিত করে (সুতরাং সাবমিট বোতামটি এখন চলে গেছে)।

উপরের কোডটি কাজ করে তবে এখন সমস্যাটি হ'ল আমি ফর্মটি জমা দিতে পারছি না! আমি এটি ফাংশনটিতে রাখার চেষ্টা করেছি placeOrder():

document.theForm.submit();

কিন্তু এটি কাজ করে না।

আমি কীভাবে ফর্ম জমা দিতে পারি?


3
আমি এটি <form>আপনার পৃষ্ঠায় কোথাও একটি ট্যাগ আছে ।
Justin808

আমি কোডটিতে কোনও <form> দেখছি না।
dotoree

1
আপনি কী বোঝাতে চেয়েছেন: ফাংশনটি উপরের ডিভির অন্তর্নিহিত এইচটিএমএলকে "প্রসেসিং ..." হিসাবে পরিবর্তিত করে (তাই সাবমিট বোতামটি এখন চলে গেছে)। এবং আপনি এই যুক্তি ভাগ করতে মন চাইবেন। যাইহোক, যদি আপনার কাছে জমা বোতাম থাকে (কোথাও নাম দিয়ে = জমা দিন), thefor.submit () ফাংশনটি কাজ করবে না। আপনার কোডটিতে যেমন রয়েছে <for>> ট্যাগ যুক্ত করে আপনার প্রশ্নটি পরিষ্কার করুন। আপনি jsfiddle.net
sakhunzai

5
... আপনার কাছে যদি সাবমিট বাটন থাকে (কোথাও নাম দিয়ে = জমা দিন) ... এটি আমার সমস্যার সমাধান! এটি ছিল <ইনপুট টাইপ = "বোতাম" নাম = "জমা" ..., তবে ফর্মটি প্রেরণ করা থেকে জাভাস্ক্রিপ্টকে অবরুদ্ধ করা হচ্ছে।
নিকোলে ইভানভ

উত্তর:


136

nameআপনার ফর্মের বৈশিষ্ট্যটি এতে সেট করুন "theForm"এবং আপনার কোডটি কাজ করবে।


14
এটি কারও কাছে সুস্পষ্ট বলে মনে হতে পারে তবে নাম এবং আইডি "জমা" দিয়ে আমার একটি বোতাম ছিল এবং আমি document.theForm.submit()একটি ত্রুটি জানাল। একবার আমি আমার বোতামটির নাম পরিবর্তন করে নিই, কোডটি পুরোপুরি কার্যকর হয়েছিল।
জোনাথন

1
@ জোনাথন আপনার বোতামটির নাম কী? কোজ, api.jquery.com অনুসারে কোনও ফর্মের শিশু উপাদানগুলিকে ইনপুট নাম বা আইডি ব্যবহার করা উচিত নয় যা কোনও ফর্মের বৈশিষ্ট্যের সাথে সাংঘর্ষিক।
কেয়া

106

তুমি ব্যবহার করতে পার...

document.getElementById('theForm').submit();

... কিন্তু না প্রতিস্থাপন innerHTML। আপনি ফর্মটি লুকিয়ে রাখতে পারেন এবং তারপরে একটি প্রক্রিয়াজাতকরণ in োকাতে পারেন ...span যা এটির জায়গায় প্রদর্শিত হবে ।

var form = document.getElementById('theForm');

form.style.display = 'none';

var processing = document.createElement('span');

processing.appendChild(document.createTextNode('processing ...'));

form.parentNode.insertBefore(processing, form);

ফর্মটি কোথায় পাঠাবেন তা আপনি কীভাবে বলবেন? উদাহরণস্বরূপ, আমার ক্ষেত্রে, আমি
লিখিত

@ ইম্রাই আপনি সম্ভবত সার্ভার-সাইড কোডটি আপনার জন্য এটি করতে চাইবেন।
অ্যালেক্স

@ কোডিবগস্টিন action="/{controller}/{action-method}" method="post"আপনি যে ফর্মটি পোস্ট করার চেষ্টা করছেন তার বৈশিষ্ট্যগুলি সেট করে ।
বার্ন

2
আমার ফর্মের নাম যেমন প্রিন্টফর্মফর্ম তেমনি আইডিও একই। document.getElementById('printoffersForm').submit();তবে আমি আমার ত্রুটি জমা দেয় তা কোনও ফাংশন নয়
মাধুরী প্যাটেল

@ মাধুরীপ্যাটেল আপনার জমা বোতামের নামও জমা দেওয়া যেতে পারে? উত্তর দেখার stackoverflow.com/questions/833032/...
rbassett

37

এটি আমার ক্ষেত্রে পুরোপুরি কাজ করে।

document.getElementById("form1").submit();

এছাড়াও, আপনি এটি নীচের মত ফাংশন ব্যবহার করতে পারেন:

function formSubmit()
{
     document.getElementById("form1").submit();
} 

এটি কি কোনও inputট্যাগ থেকে ফর্মের মূল্য জমা দেবে ?
সিমানাচি

@ রই হ্যাঁ, এটি ইনপুট ট্যাগগুলি থেকে ফর্মের মান জমা দেবে।
চিন্তন থুমার

2
@ChintanThummar এবং তারপর আপনি সব ব্যবস্থা করতে সক্ষম ফর্ম জমা । Document.getElementById ব্যবহার ( "form1") onsubmit = ফাংশন () {// আপনি Ajax কোড এখানে ব্যবহার রিফ্রেশ পৃষ্ঠা ছাড়া ফর্ম // জমা দিতে পারবেন না}
Shubham কুমার

আমি এটি চেষ্টা করে দেখিনি তবে আমি যে সরবরাহ করেছি তা তার চেয়ে বেশি বেটার। ধন্যবাদ;)
চিন্তন থুমার

12
document.forms["name of your form"].submit();

অথবা

document.getElementById("form id").submit();

আপনি এর যে কোনও একটি চেষ্টা করতে পারেন..এটি অবশ্যই কাজ করবে ..


5

এটি একটি পুরাতন পোস্ট তবে আমি ফর্মের nameভিতরে ট্যাগ ব্যবহার না করে ফর্মটি জমা দেওয়ার জন্য যেভাবে করব তা ছেড়ে দেব :

এইচটিএমএল

<button type="submit" onClick="placeOrder(this.form)">Place Order</button>

জাতীয়

function placeOrder(form){
    form.submit();
}

আশা করি এই সমাধানটি অন্য কাউকে সহায়তা করতে পারে। TQ


3

এইচটিএমএল

<!-- change id attribute to name  -->

<form method="post" action="yourUrl" name="theForm">
    <button onclick="placeOrder()">Place Order</button>
</form>

জাভাস্ক্রিপ্ট

function placeOrder () {
    document.theForm.submit()
}

4
আপনার উত্তরে দয়া করে কিছু ব্যাখ্যা যুক্ত করুন।
সাম্পদা

এটি ইতিমধ্যে দেওয়া উত্তরগুলির মানের উন্নতি করে না।
রেন্ডি

2

আপনার ফর্মটিতে যদি কোনও আইডি না থাকে তবে এর একটি শ্রেণীর নাম ফর্মের মতো থাকে তবে আপনি এটি জমা দেওয়ার জন্য নীচের বিবৃতিটি ব্যবহার করতে পারেন:

document.getElementsByClassName("theForm")[0].submit();

উপরের একই শ্রেণীর নামের আরও ফর্মগুলি কী আছে?
জ্যাক 1987

0

ব্যবহারকারীদের লগ ইন করা একই তথ্যের সাথে আমার ওয়েবসাইটে লুকানো একটি সহজ ফর্ম ব্যবহার করে আমি একটি সহজ সমাধান নিয়ে এসেছি। উদাহরণ আপনি যদি কোনও ব্যবহারকারীকে এই ফর্মটিতে লগ ইন করতে চান তবে নীচের ফর্মে ফর্মটিতে এই জাতীয় কিছু যুক্ত করতে পারেন।

<input type="checkbox" name="autologin" id="autologin" />

আমি যতদূর জানি আমি প্রথম কোনও ফর্মটি আড়াল করে একটি লিঙ্কে ক্লিক করার মাধ্যমে এটি জমা দিয়েছি। তথ্যের সাথে একটি লুকানো ফর্ম জমা দেওয়ার লিঙ্কটি রয়েছে। 100% নিরাপদ নয় যদি আপনি নিজের ওয়েবসাইটে কোনও লুকানো ফর্মের পাসওয়ার্ডের পাঠ্য এলাকায় বসে পাসওয়ার্ড সহ অটো লগইন পদ্ধতি পছন্দ করেন না ......

ঠিক আছে তাই এখানে কাজ। আসুন $siteidঅ্যাকাউন্ট এবং $sitepwপাসওয়ার্ড বলে দিন।

প্রথমে আপনার পিএইচপি স্ক্রিপ্টে ফর্মটি তৈরি করুন যদি আপনি এটিতে এইচটিএমএল পছন্দ করেন না তবে ন্যূনতম ডেটা ব্যবহার করেন তবে কোনও লুকানো ফর্মের মধ্যে মানটি প্রতিধ্বনি করুন। আমি কেবল একটি পিএইচপি মান ব্যবহার করি এবং যে কোনও জায়গায় ইকো করতে চাই আমি ফর্ম বোতামের পাশের প্রিফটি চাই যেমন এটি দেখতে পাচ্ছি না।

মুদ্রণের জন্য পিএইচপি ফর্ম

$hidden_forum = '
<form id="alt_forum_login" action="./forum/ucp.php?mode=login" method="post" style="display:none;">
    <input type="text" name="username" id="username" value="'.strtolower($siteid).'" title="Username" />
    <input type="password" name="password" id="password" value="'.$sitepw.'" title="Password" />
</form>';

ফর্ম জমা দেওয়ার জন্য পিএইচপি এবং লিঙ্ক

<?php print $hidden_forum; ?>
<pre><a href="#forum" onClick="javascript: document.getElementById('alt_forum_login').submit();">Forum</a></pre>

সত্য আপনি কি ফর্মটি জমা দিতে কিন্তু লিঙ্ক আমার দুঃখিত কোডিং মধ্যে প্রদর্শিত কিন্তু করতে অভ্যস্ত একটি onclick বা a href = জাভাস্ক্রিপ্ট:) document.getElementById ( 'alt_forum_login') জমা দিতে (।
AgeofTalisman

প্রশ্ন জাভাস্ক্রিপ্ট সম্পর্কে, পিএইচপি কোডের কোনও প্রয়োজন নেই
শেদোকন

0

আপনি জাভাস্ক্রিপ্ট ব্যবহার করে ফর্মটি জমা দেওয়ার জন্য নীচের কোডটি ব্যবহার করতে পারেন;

document.getElementById('FormID').submit();

-1
<html>
<body>

<p>Enter some text in the fields below, then press the "Submit form" button to submit the form.</p>

<form id="myForm" action="/action_page.php">
  First name: <input type="text" name="fname"><br>
  Last name: <input type="text" name="lname"><br><br>
  <input type="button" onclick="myFunction()" value="Submit form">
</form>

<script>
function myFunction() {
    document.getElementById("myForm").submit();
}
</script>

</body>
</html>

আপনি কি যথাযথ উত্তর ভাগ করতে পারবেন যা কেবলমাত্র পরের বার প্রাসঙ্গিক অংশ এবং কিছু ব্যাখ্যা রয়েছে?
নিকো হাজে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.