q=জাভা স্ক্রিপ্ট বা jQuery ব্যবহার করে ক্যোরির স্ট্রিংটিতে এটি রয়েছে কিনা আমি কীভাবে তা পরীক্ষা করতে পারি ?
উত্তর:
var field = 'q';
var url = window.location.href;
if(url.indexOf('?' + field + '=') != -1)
return true;
else if(url.indexOf('&' + field + '=') != -1)
return true;
return false
?kodiaq=1, তবে url.indexOf('q=')এটির সাথে প্রাকটিফিকেশন না করে কল করা &বা ?আপনাকে qপ্যারামিটারটি উপস্থিত রয়েছে তা বিশ্বাস করতে পরিচালিত করবে ।
আপনি নিয়মিত এক্সপ্রেশনও ব্যবহার করতে পারেন:
/[?&]q=/.test(location.search)
if(/[?&]q=/.test(location.search)) { alert("match"); }বলতে গেলে , এটি দুর্দান্ত কাজ করে (@ ড্রাগাগস ডারলুট মন্তব্যের কারণে আমি কিছুটা বিভ্রান্ত হয়েছিলাম। :)
ব্যবহার URL:
url = new URL(window.location.href);
if (url.searchParams.get('test')) {
}
সম্পাদনা: আপনি যদি সামঞ্জস্যের বিষয়ে দু: খিত হন তবে আমি অত্যন্ত https://github.com/medialize/URI.js/ পরামর্শ দেব ।
সরল জাভাস্ক্রিপ্ট কোড নমুনা যা আপনার প্রশ্নের আক্ষরিক উত্তর দেয়:
return location.search.indexOf('q=')>=0;
সরল জাভাস্ক্রিপ্ট কোড নমুনা যা q প্যারামিটারটি বিদ্যমান কিনা তা আবিষ্কার করার চেষ্টা করে এবং এর মান রয়েছে কিনা:
var queryString=location.search;
var params=queryString.substring(1).split('&');
for(var i=0; i<params.length; i++){
var pair=params[i].split('=');
if(decodeURIComponent(pair[0])=='q' && pair[1])
return true;
}
return false;
fooq=bar
আরও একটি বৈকল্পিক, তবে প্রায় গম্বোসের সমাধানের মতো:
var isDebug = function(){
return window.location.href.search("[?&]debug=") != -1;
};
এটা চেষ্টা কর
//field "search";
var pattern = /[?&]search=/;
var URL = location.search;
if(pattern.test(URL))
{
alert("Found :)");
}else{
alert("Not found!");
}
জেএসফিডাল: https://jsfiddle.net/codemirror/zj4qyao2/
আধুনিক ব্রাউজারগুলিতে, URLSearchParamsইন্টারফেসের জন্য ধন্যবাদ এটি অনেক সহজ হয়ে উঠেছে । এটি একটি ইউআরএল এর ক্যোরি স্ট্রিংয়ের সাথে কাজ করার জন্য একটি হোস্ট ইউটিলিটি পদ্ধতির সংজ্ঞা দেয়।
আমাদের ইউআরএলটি ধরে নিলে https://example.com/?product=shirt&color=blue&newuser&size=m, আপনি এই ব্যবহার করে ক্যোয়ারী স্ট্রিংটি ধরতে পারেন window.location.search:
const queryString = window.location.search;
console.log(queryString);
// ?product=shirt&color=blue&newuser&size=m
এরপরে আপনি কোয়েরি স্ট্রিংয়ের প্যারামিটারগুলি ব্যবহার করে পার্স করতে পারেন URLSearchParams:
const urlParams = new URLSearchParams(queryString);
তারপরে আপনি ফলাফলটিতে এর যে কোনও পদ্ধতিতে কল করতে পারেন।
উদাহরণস্বরূপ, URLSearchParams.get()প্রদত্ত অনুসন্ধান প্যারামিটারের সাথে যুক্ত প্রথম মানটি ফিরিয়ে দেবে:
const product = urlParams.get('product')
console.log(product);
// shirt
const color = urlParams.get('color')
console.log(color);
// blue
const newUser = urlParams.get('newuser')
console.log(newUser);
// empty string
URLSearchParams.has()নির্দিষ্ট প্যারামিটার রয়েছে কিনা তা পরীক্ষা করতে আপনি ব্যবহার করতে পারেন :
console.log(urlParams.has('product'));
// true
console.log(urlParams.has('paymentmethod'));
// false
আমি এই লাইব্রেরিটি আগে ব্যবহার করেছি যা আপনার পরে কী হবে তার দুর্দান্ত কাজ করে। বিশেষত: -
qs.contains(name)
Returns true if the querystring has a parameter name, else false.
if (qs2.contains("name1")){ alert(qs2.get("name1"));}
এটির সাহায্য করা উচিত:
function getQueryParams(){
try{
url = window.location.href;
query_str = url.substr(url.indexOf('?')+1, url.length-1);
r_params = query_str.split('&');
params = {}
for( i in r_params){
param = r_params[i].split('=');
params[ param[0] ] = param[1];
}
return params;
}
catch(e){
return {};
}
}
var url = new URLSearchParams(location.search); url.has("my_great_query");আয়trueযদি কোয়েরি স্ট্রিং আপনার URL রয়েছে। তারপরে আপনি এর মানটি পেতে পারেনurl.get("my_great_query");।