ExtJS একটি শক্তিশালী ফ্রেমওয়ার্ক যা ফর্ম ডিজাইন এবং ফর্মের বিভিন্ন উপাদান (উইজেট) সহজভাবে তৈরি এবং পরিচালনা করতে সহায়তা করে। এক্সটিজেএসে TextField, ComboBox, এবং DateField সহ বিভিন্ন ফর্ম উইজেট ব্যবহৃত হয় যা ইউজার ইন্টারফেসে তথ্য গ্রহণ করতে সাহায্য করে। এই উইজেটগুলো ফর্মের অন্যতম গুরুত্বপূর্ণ অংশ এবং ডেটা সংগ্রহের ক্ষেত্রে গুরুত্বপূর্ণ ভূমিকা পালন করে।
TextField এক্সটিজেএস এর সবচেয়ে মৌলিক ইনপুট উইজেট যা ব্যবহারকারীর কাছ থেকে টেক্সট ডেটা গ্রহণ করতে ব্যবহৃত হয়। এটি সাধারণত ব্যবহারকারীর নাম, ইমেল, অথবা অন্য কোনও স্ট্রিং ইনপুটের জন্য ব্যবহৃত হয়।
Ext.create('Ext.form.Panel', {
title: 'TextField Example',
width: 400,
height: 200,
bodyPadding: 10,
items: [{
xtype: 'textfield',
name: 'username',
fieldLabel: 'Username',
allowBlank: false // এটি ইনপুট ফিল্ডের জন্য বাধ্যতামূলক হবে
}],
renderTo: Ext.getBody()
});
'textfield'
ইনপুট ফিল্ড তৈরি করে।false
থাকে, তবে এটি ইনপুট ফিল্ডের জন্য বাধ্যতামূলক হবে।xtype: 'textfield',
inputType: 'password', // পাসওয়ার্ড ইনপুটের জন্য
regex: /^[a-zA-Z0-9]+$/, // কেবলমাত্র অক্ষর এবং সংখ্যা গ্রহণযোগ্য
ComboBox হল একটি ড্রপডাউন ইনপুট ফিল্ড, যা ব্যবহারকারীকে একটি নির্দিষ্ট তালিকা থেকে একটি মান নির্বাচন করতে দেয়। এটি সাধারণত পছন্দের তালিকা বা দেশ নির্বাচন করার জন্য ব্যবহৃত হয়।
Ext.create('Ext.form.Panel', {
title: 'ComboBox Example',
width: 400,
height: 200,
bodyPadding: 10,
items: [{
xtype: 'combo',
name: 'country',
fieldLabel: 'Select Country',
store: ['USA', 'Canada', 'UK', 'India'], // স্টোরের মাধ্যমে দেশগুলির তালিকা
allowBlank: false, // এটি বাধ্যতামূলক হবে
queryMode: 'local', // ডেটা লোকাল ভাবে লোড করা
displayField: 'name', // প্রদর্শিত ফিল্ড
valueField: 'code' // মানের ফিল্ড
}],
renderTo: Ext.getBody()
});
'combo'
ড্রপডাউন নির্বাচন ফিল্ড তৈরি করে।'local'
হলে ডেটা ক্লায়েন্ট সাইডে থেকে লোড হবে।true
থাকে, তবে ব্যবহারকারী শুধুমাত্র স্টোরের তালিকা থেকে নির্বাচন করতে পারবেন।true
থাকে, তবে তালিকায় টাইপ করা মানের সঙ্গে মেলে এমন আইটেমটি স্বয়ংক্রিয়ভাবে নির্বাচন হবে।forceSelection: true,
typeAhead: true
DateField একটি ইনপুট ফিল্ড যা ব্যবহারকারীর কাছ থেকে একটি তারিখ গ্রহণ করতে ব্যবহৃত হয়। এটি সাধারণত জন্মতারিখ, রেজিস্ট্রেশন তারিখ ইত্যাদির জন্য ব্যবহৃত হয়।
Ext.create('Ext.form.Panel', {
title: 'DateField Example',
width: 400,
height: 200,
bodyPadding: 10,
items: [{
xtype: 'datefield',
name: 'birthdate',
fieldLabel: 'Date of Birth',
allowBlank: false, // বাধ্যতামূলক
format: 'm/d/Y' // তারিখ ফরম্যাট
}],
renderTo: Ext.getBody()
});
'datefield'
ব্যবহার করে তারিখ ইনপুট ফিল্ড তৈরি হয়।false
থাকে, এটি বাধ্যতামূলক হবে।'m/d/Y'
বা 'Y-m-d'
।minValue: new Date(2000, 1, 1), // 2000 সালের ১ জানুয়ারি থেকে পরবর্তী তারিখ
maxValue: new Date(2025, 1, 1) // 2025 সালের ১ জানুয়ারির আগে তারিখ নির্বাচনযোগ্য
এই ফর্ম উইজেটগুলো ব্যবহার করে আপনি শক্তিশালী, ব্যবহারকারী-বান্ধব এবং কার্যকরী ফর্ম তৈরি করতে পারবেন যা আপনার অ্যাপ্লিকেশনে তথ্য সংগ্রহ এবং প্রসেসিং সহজ করে তুলবে।