ফায়ারফক্স নির্বাচিত বিকল্পটিকে উপেক্ষা করে = "নির্বাচিত"


112

আপনি যদি একটি ড্রপডাউন পরিবর্তন করেন এবং পৃষ্ঠাটি রিফ্রেশ করেন তবে ফায়ারফক্স নির্বাচিত বৈশিষ্ট্যটিকে উপেক্ষা করবে বলে মনে হচ্ছে।

<option selected="selected" value="Test">Test</option>

এটি বাস্তবে আপনি যে বিকল্পটি আগে নির্বাচিত করেছিলেন তা নির্বাচন করবে (রিফ্রেশের আগে)। এটি আমার জন্য সমস্যা হয়ে দাঁড়ায় যেহেতু ড্রপডাউনটিতে একটি ইভেন্ট শুরু হয়েছিল যা অন্যান্য জিনিসগুলিকে পরিবর্তন করে। ফায়ার ফক্সকে এই আচরণ বন্ধ করার কোনও উপায় আছে (পৃষ্ঠাটি লোড হয়ে যাওয়ার পরে অন্য কোনও ঘটনাকে গুলি চালানো ব্যতীত)?


আমি এখন এই সমস্যার মুখোমুখি $('option:selected').each(function(){ $(this).prop('selected',true); });
হয়েছি

আমি লক্ষ্য করেছি যে এটি কেবলমাত্র এমন উপাদানগুলি নির্বাচন করতে ঘটে
যাগুলির

3
স্বতঃপূরণ = "বন্ধ" চেষ্টা করুন
hemanjosko

উত্তর:


5

আফাইক, এই আচরণটি ফায়ারফক্সে কঠোরভাবে কোডড।

আপনি প্রতিটি ফর্ম উপাদানটিকে এর defaultValueউপর পৃষ্ঠা লোড সেট করার চেষ্টা করতে পারেন ।


1
ফর্মের মধ্যে সমস্ত উপাদানগুলির জন্য এটি করার সহজ কি ছিল?
বানর-রেঞ্চ

@ মোকি জিকিউরি ব্যবহার করে, এটি এমন কিছু হওয়া উচিত $(":input").val(this[0].defaultValue);(অনির্ধারিত); সাধারণ জেএসে, প্রতিটি হলেও হাঁটাচলা করুনdocument.getElementsByTagname("select")
পেক্কা

যদিও এটি আদর্শ সমাধান নয়, এটি কাজ করে .. আপনাকে getAttribute ("নির্বাচিত") উপর একটি চেক করতে হবে
বানর-রেঞ্চ

8
এফওয়াইআই - নীচে মার্কো ডেমাইওর আরও অনেক ভাল উত্তর আছে
জুনলিংক

281

যোগ autocomplete="off"প্রত্যেক নির্বাচন ট্যাগে এইচটিএমএল অ্যাট্রিবিউট। (উত্স: https://stackoverflow.com/a/8258154/260080 )

এটি ফায়ারফক্সে ওডিডি আচরণটি সংশোধন করে।


7
এটি আমার পছন্দ (অনেক ধন্যবাদ মার্কো এবং বানর-রেঞ্চ, আমার চুলের কয়েকটা বাচ্চা সেখানে রক্ষা করেছে)। এবং আপনাকে এটিকে প্রতিটি <ইনপুট> একটি "মান" বা "চেক করা" বৈশিষ্ট্যযুক্ত, এবং সামগ্রী সহ কোনও <টেক্সটেকারও> যুক্ত করতে হবে।
স্বনি

22
এটি অবশ্যই সঠিক উত্তর হওয়া উচিত। একটি যাদুমন্ত্র মত কাজ করে.
অ্যান্ড্রু সেনার

1
এটি ডাব্লু 3 সি বৈধ নয়
জোস দে গাউভিয়া

1
উইন্ডোজ, ফায়ারফক্স ভের ৪৪.০ (২০১ 2016-জানুয়ারী) তে আমার একই সমস্যা ছিল। এবং এই সমাধান এখনও কাজ করে।
স্টিভেন

1
ফায়ারফক্স 47.0 তে মোহন করার মতো কাজ করে।
ব্ল্যাকচো

72

ফায়ারফক্সে, আমি লক্ষ করেছি যে "নির্বাচিত" অ্যাট্রিবিউট কাজ করবে না যতক্ষণ না আপনি নির্বাচিত ফর্মের ভিতরে রাখেন, যেখানে ফর্মটির একটি নাম বৈশিষ্ট্য রয়েছে।


3
BAM! এটি স্থির করে যেখানে স্বতঃপূরণ = "অফ" হয় নি।
ছোট_বার্ডি

ফায়ারফক্স 78৮.০.২ এর সাথে আমার মাথা আঁচড়ান এক ঘন্টা ব্যয় করুন। আমার ফর্মের কোনও নামের প্রয়োজন ছিল না তবে এটি দেওয়ার ফলে স্বস্তি পাওয়া যায়।
বেটাকিলো

11

ঠিক একই সমস্যা ছিল, বিশ্বাস করুন এই নির্বোধ ফায়ারফক্স আচরণের সাথে 10 ঘন্টা বেশি সংগ্রাম করা হয়েছে, আমার কাছে 7 টি ড্রপডাউন রয়েছে, তাদের প্রত্যেকটি একটি ইভেন্ট ট্রিগার করবে এবং 24 টি লুকানো ইনপুট পূরণ করবে, যাতে আপনি সঠিক বিকল্পটি নির্বাচন করে কল্পনা করতে পারেন 24 টি ভুল ইনপুট মান !!! শেষ পর্যন্ত আমি যে সমাধানটি পেয়েছি তা হ'ল জাভাস্ক্রিপ্টের সাথে কোডটির এই লাইনটি যুক্ত করে ফর্মটি পুনরায় সেট করা:

window.onload = function() { document.forms['MarkerForm'].reset(); };

পিএস: ইনপুটগুলির একটি ডাটাবেস থেকে মানগুলি টানতে থাকে, সুতরাং ফর্মটি পুনরায় সেট করা কোনও মান খালি করে না তবে একটি উপায়ে ফায়ারফক্সকে নির্বাচিত = নির্বাচিত বিকল্পে নরকে ফিরে যেতে বলে!


এটা সঠিক উত্তর. একটি নির্বাচিত উপাদানটিতে "স্বতঃসমম্পূর্ণ" ব্যবহার করার জন্য বলা উত্তরগুলি ভুল কারণ "স্বতঃপূরণ" ডাব্লু 3 অনুযায়ী কোনও নির্বাচিত ক্ষেত্রের জন্য একটি বৈধ বৈশিষ্ট্য নয় এবং "এই মুহুর্তে উপাদান নির্বাচনের ক্ষেত্রে অ্যাট্রিবিউট স্বতঃপূরণ অনুমোদিত নয়।" বৈধতা ত্রুটি।
স্কট

6

রিফ্রেশ করার সময় এটি কেবল ফায়ারফক্স আপনার পূর্ববর্তী নির্বাচনের কথা মনে করে। পরিবর্তে একটি হার্ড রিফ্রেশ চেষ্টা করুন।

এছাড়াও, এখানে এখানে একই সমস্যা: https://stackoverflow.com/a/1505693/1069232

এছাড়াও এখানে দেখুন: https://bugzilla.mozilla.org/show_bug.cgi?id=274795


মনে হচ্ছে এটি একটি ফায়ারফক্স বৈশিষ্ট্য।
ওলেকসেই ক্যাস্লিয়েটসিন

5

autocompleteসিলেক্ট ইনপুট এর বৈশিষ্ট্যটি অক্ষম করার চেষ্টা করুন ... কখনও কখনও এর selectকারণে ব্রাউজার উপেক্ষা করে


3

আমি 25.0.1 এফএফ ব্যবহার করছি

এটা উপেক্ষা selected=""এবং selected="selected"

তবে আমি যদি চেষ্টা করি selectedতবে বিকল্পটি নির্বাচন করা হয়েছে।

অদ্ভুত (নন-কনফরমেন্ট) আচরণ। আমি জানি selectedবৈধ এইচটিএমএল 5 এবং এটি সংক্ষিপ্ততম ফর্ম, তবে আমি সাধারণত কোডটি লিখি যা সুপরিচিত এক্সএমএলকেও বৈধতা দেয়, যাতে আমি খুব কঠোর উপায়ে আমার ফলাফলগুলি পরীক্ষা করতে কোনও এক্সএমএল বৈধতা সরঞ্জাম ব্যবহার করতে পারি (এবং ডেটা এক্সচেঞ্জ খুব সহজ .. ।)

ডাব্লু 3 সি অনুসারে, এই রূপগুলি বুলিয়ান বৈশিষ্ট্যের ক্ষেত্রে বৈধ হওয়া উচিত:

HTML5:  boolAttr="" | boolAttr="boolAttr" | boolAttr
XHTML5: boolAttr="" | boolAttr="boolAttr"

আমি প্রথমটিকে পছন্দ করি, এটি শেষের হিসাবে প্রায় ছোট (এক্সএমএল কনফরম্যান্ট নয়) ভেরিয়েন্টের মতো তবে এক্সএইচটিএমএল 5 এবং এইচটিএমএল 5 উভয় হিসাবে যাচাই করা উচিত। সুতরাং আমি আশা করি, মজিলা এটি ঠিক করবে!


3

.ttr () এর পরিবর্তে .prop () ব্যবহার করুন

This does not work in firefox.
  $( 'option[value="myVal"]' ).attr( 'selected', 'selected' );
use this one
  $( 'option[value="myVal"]' ).prop( 'selected', 'selected' );

In other way
  $( this ).prop( 'selected', 'selected' );

ফায়ারফক্স এবং ক্রোম উভয়ের জন্য কাজগুলি সক্ষম / অক্ষম করতে ব্যবহার .prop('selected', true);বা .prop('selected', false);(jQuery)।
জিম্ব

2

.reset()পৃষ্ঠাটি রিফ্রেশ করার আগে আপনি ফর্মটিতে কল করতে পারেন ।


2

ফর্ম বিশিষ্টতায় নির্বাচনটি ঘিরে ফেলুন এবং এটি কাজ করবে।

<!-- will not work in firefox -->
<option selected="selected" value="Test">Test</option>

এবং

<!-- this will work in firefox -->
<form>
 <option selected="selected" value="Test">Test</option>
</form>

2

নামের সাথে আরও ভাল = >>

form id="UMForm" name="UMForm" class="form"

নির্বাচনটি নির্বাচিত বৈশিষ্ট্যটি গ্রহণ করবে


1

এটি মজিলায় একটি বাগ হতে পারে তবে ড্রপডাউনটিকে একটি নাম দেওয়ার চেষ্টা করুন।



1
<option selected="selected" value="Test">Test</option>

এই ক্ষেত্রে এটি ক্রোম এবং ফায়ারফক্সের জন্য কাজ করেছে worked

$('option[value="Test"]').prop('selected', true);

আমি এর .attr()পরিবর্তে ব্যবহার করছিলাম.prop()


1

ড্রপডাউনটির প্রথম আইটেমটি দেখানোর জন্য, ব্যবহার করুন ProjectName.ClearSelection();

সমস্ত ব্রাউজারে কাজ করার জন্য আপনার ডিজাইনের পৃষ্ঠায় লাইন রাখুন এবং পৃষ্ঠা লোডের পিছনে কোডটিতে এটি রাখুন।

$(document).ready(function () {
    $("#content_ProjectName option[value='1']").prop("selected", true);
});

0

আপনি যদি নির্বাচনটি পরিবর্তন করেন এবং পৃষ্ঠাটি রিফ্রেশ করেন তবে ফায়ারফক্স ফর্মটিতে আপনার পরিবর্তনগুলি পুনরুদ্ধার করবে, এ কারণেই আপনি মনে করেন যে নির্বাচনটি কাজ করছে না। রিফ্রেশ করার পরিবর্তে, নতুন ট্যাবে লিঙ্কটি খোলার চেষ্টা করুন।


এটি সত্য, তবে আমার সমস্যার সমাধান হবে বলে মনে হয় না। আমার তখনও একটি কাজ দরকার কারণ আমার পুনরুদ্ধার ইভেন্টটি আগুন না দেয় যখন আমি রিফ্রেশ করি তখন ফায়ার ফক্স ফর্মে কোনও পরিবর্তন পুনরুদ্ধার করে।
বানর-রেঞ্চ

0

এটি আমার সমাধান:

var select = document.getElementById('my_select');
for(var i=0; i < select.options.length; i++){
    select.options[i].selected = select.options[i].attributes.selected != undefined;
}

আমি কেবল এটি পৃষ্ঠার শীর্ষে রেখেছি (উপযুক্ত আইডি সেট সহ) এবং এটি আমার পক্ষে কাজ করে। পৃষ্ঠার সমস্ত নির্বাচনের উপরে লুপের সাথে getElementById প্রতিস্থাপন করে আমি পাঠকের অনুশীলন হিসাবে ছেড়ে চলেছি;)।


0

আমার জন্য উপরের সমাধানগুলির কোনওটিই কাজ করে না। কোনওটি সেট না করা থাকলে আমাকে স্পষ্টভাবে নির্বাচনটি সেট করতে হয়েছিল:

if (foo.find(':selected').length === 0) {
    $(foo.find('option')[0]).attr('selected', 'selected');
}

আমি চাই ফায়ারফক্স এটি ঠিক করে দেবে :(


0

কর্মক্ষেত্রে, আমি সবেমাত্র একটি বাগ ঠিক করেছি যেখানে সিলেক্ট বাক্স বিকল্পটি একই ওয়েব পৃষ্ঠায় ফায়ারফক্সে নয় ক্রোমে সঠিকভাবে প্রদর্শিত হয়। এটি উপরের সমস্যাগুলির চেয়ে সম্পূর্ণ ভিন্ন কিছুতে পরিণত হয়েছিল, তবে সম্ভবত আপনি যে সমস্যার মুখোমুখি হচ্ছেন তা হতে পারে।

ক্রোমে, নির্বাচন করা বাক্সের ফন্টের রঙটি ছিল কালো। ফায়ারফক্সে কোনও কারণে, নির্বাচন বাক্সটি ধারক থেকে ফন্টের রঙ উত্তরাধিকার সূত্রে প্রাপ্ত, যা সাদা ছিল। একবার আমি বাধ্য হয়ে একটি সিএসএস বিধি যুক্ত করেছি যে বাক্সটি ফন্টের রঙটি কালো হতে বাধ্য করুন, মান সেটটি সঠিকভাবে প্রদর্শিত হয়েছিল।


0

autocomplete="off"এটি formআমার পক্ষে কোনও কাজের মধ্যে রাখেনি বা রাখবে না ।

যা কাজ করেছিল তা কেবল কোনও "মান" ছাড়াই নির্বাচিত বৈশিষ্ট্যটি ব্যবহার করা ছিল :

<option @(Model.Source == TermSource.Instagram ? "selected" : "")>
    Instagram
</option>
<option @(Model.Source == TermSource.Facebook ? "selected" : "")>
    Facebook
</option>

সুতরাং হয় এটি রেন্ডার করে <option selected>...</option>, বা ঠিক<option>...</option>

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