সংক্ষিপ্ত সংস্করণ
element.setAttribute("required", "");
element.required = true;
jQuery(element).attr('required', '');
$("#elementId").attr('required', '');
element.removeAttribute("required");
element.required = false;
jQuery(element).removeAttr('required');
$("#elementId").removeAttr('required');
if (edName.hasAttribute("required")) { }
if (edName.required) { }
দীর্ঘ সংস্করণ
একবার টিজে ক্রাউডার প্রতিফলিত বৈশিষ্ট্যগুলি চিহ্নিত করতে পরিচালিত হলে , আমি শিখেছি যে নিম্নলিখিত বাক্য গঠনটি ভুল :
element.attributes["name"] = value;
element.attributes.name = value;
value = element.attributes.name;
value = element.attributes["name"];
আপনার অবশ্যই যেতে হবেelement.getAttribute
এবং element.setAttribute
:
element.getAttribute("foo");
element.setAttribute("foo", "test");
এটি কারণ অ্যাট্রিবিউটটিতে আসলে একটি বিশেষ এইচটিএমএলঅ্যাট্রিবিউট অবজেক্ট থাকে:
element.attributes["foo"];
element.attributes.foo;
"সত্য" -এর জন্য একটি অ্যাট্রিবিউট মান সেট করে, আপনি ভুলভাবে এটি স্ট্রিং অবজেক্টে সেট করছেন, এইচটিএমএলঅ্যাট্রিবিউট অবজেক্টের জন্য এটি প্রয়োজন:
element.attributes["foo"] = "true";
element.setAttribute("foo", "true");
ধারণামূলকভাবে সঠিক ধারণা (একটি টাইপিত ভাষায় প্রকাশিত), হ'ল:
HtmlAttribute attribute = new HtmlAttribute();
attribute.value = "";
element.attributes["required"] = attribute;
এ জন্যই:
getAttribute(name)
setAttribute(name, value)
উপস্থিত। তারা এইচটিএমএলএন্ট্রিবিউট অবজেক্টটির ভিতরে মান নির্ধারণের কাজটি করে।
এর উপরে, কিছু বৈশিষ্ট্য প্রতিফলিত হয় । এর অর্থ আপনি জাভাস্ক্রিপ্ট থেকে আরও সুন্দরভাবে এগুলি অ্যাক্সেস করতে পারবেন:
element.required = true;
if (element.required) {...}
element.required = false;
আপনি যা করতে চান না তা ভুলভাবে .attributes
সংগ্রহটি ব্যবহার করুন :
element.attributes.required = true;
if (element.attributes.required) {...}
element.attributes.required = false;
পরীক্ষার ক্ষেত্রে
এটি required
বৈশিষ্ট্যের মাধ্যমে প্রত্যাবর্তিত মান এবং প্রতিফলিত সম্পত্তির তুলনা করে একটি অ্যাট্রিবিউট ব্যবহারের আশেপাশে পরীক্ষার দিকে পরিচালিত করে
document.getElementById("name").required;
document.getElementById("name").getAttribute("required");
ফলাফল সহ:
HTML .required .getAttribute("required")
========================== =============== =========================
<input> false (Boolean) null (Object)
<input required> true (Boolean) "" (String)
<input required=""> true (Boolean) "" (String)
<input required="required"> true (Boolean) "required" (String)
<input required="true"> true (Boolean) "true" (String)
<input required="false"> true (Boolean) "false" (String)
<input required="0"> true (Boolean) "0" (String)
.attributes
সংগ্রহটি সরাসরি অ্যাক্সেস করার চেষ্টা করা ভুল। এটি সেই বস্তুটি প্রদান করে যা DOM বৈশিষ্ট্যটি উপস্থাপন করে:
edName.attributes["required"] => [object Attr]
edName.attributes.required => [object Attr]
আপনার কেন কখনই .attributes
সংগ্রহের সাথে সরাসরি কথা বলবেন না তা এটি ব্যাখ্যা করে। আপনি গুণাবলীর মানগুলিতে হেরফের করছেন না , তবে সেই বস্তুগুলি যা গুণাবলীকে নিজেরাই উপস্থাপন করে।
কীভাবে সেট করবেন?
required
কোনও বৈশিষ্ট্যের উপর সেট করার সঠিক উপায় কী ? আপনার দুটি পছন্দ রয়েছে, হয় প্রতিফলিত সম্পত্তি বা সঠিকভাবে বৈশিষ্ট্যটি সেট করার মাধ্যমে:
element.setAttribute("required", "");
edName.required = true;
কঠোরভাবে বলতে গেলে, অন্য কোনও মান বৈশিষ্ট্যটিকে "সেট" করবে। কিন্তু সংজ্ঞা Boolean
বৈশিষ্ট্যাবলী নির্দেশ এটি শুধুমাত্র খালি স্ট্রিং এ সেট করা উচিত যে ""
ইঙ্গিত সত্য । নীচের পদ্ধতিগুলি সমস্ত বুলিয়ান বৈশিষ্ট্য সেট করতে কাজ করে , required
তবে সেগুলি ব্যবহার করবেন না :
element.setAttribute("required", "required");
element.setAttribute("required", "foo");
element.setAttribute("required", "true");
element.setAttribute("required", "false");
element.setAttribute("required", false);
element.setAttribute("required", 0);
আমরা ইতিমধ্যে শিখেছি যে সরাসরি এ্যাট্রিবিউট সেট করার চেষ্টা করা ভুল:
edName.attributes["required"] = true;
edName.attributes["required"] = "";
edName.attributes["required"] = "required";
edName.attributes.required = true;
edName.attributes.required = "";
edName.attributes.required = "required";
কীভাবে সাফ করবেন ?
কৌতুক যখন বের করার চেষ্টা অপসারণrequired
অ্যাট্রিবিউট এটি ঘটনাক্রমে এটি চালু করা খুবই সহজ হয়:
edName.removeAttribute("required");
edName.required = false;
অবৈধ উপায় সহ:
edName.setAttribute("required", null);
edName.setAttribute("required", "");
edName.setAttribute("required", "false");
edName.setAttribute("required", false);
edName.setAttribute("required", 0);
প্রতিবিম্বিত .required
সম্পত্তি ব্যবহার করার সময় , আপনি এটি বন্ধ করার জন্য কোনও "ভুয়া" মান এবং এটি চালু করার জন্য সত্যবাদী মানগুলিও ব্যবহার করতে পারেন । তবে স্বচ্ছতার জন্য কেবল দৃ stick়ভাবে আটকে থাকুন।
কিভাবে পরীক্ষা জন্য required
?
.hasAttribute("required")
পদ্ধতির মাধ্যমে বৈশিষ্ট্যের উপস্থিতি যাচাই করুন :
if (edName.hasAttribute("required"))
{
}
আপনি এটি বুলিয়ান প্রতিবিম্বিত .required
বৈশিষ্ট্যের মাধ্যমেও পরীক্ষা করতে পারেন :
if (edName.required)
{
}
required="false"
, তারা কি স্ট্যান্ডার্ড লেখার আগে কোনও টেম্পলেট লিখেছিল? শর্তসাপেক্ষ বৈশিষ্ট্যগুলি সাধারণত একটি ব্যথা হয়, সেই বুলিয়ানটিকে