2016-01-14 6 views
6

क्या कोई तरीका है कि मैं विकल्प टैग के तहत एक बार में सभी लिंक बदल सकता हूं?
उदाहरण के लिए:एक बार में सभी लिंक बदलें

<select size="1" name="links" onchange="window.location.href=this.value;"> 
<option value=" http://website.com/1001/">Blue</option> 
</select><br> 

<select size="1" name="links" onchange="window.location.href=this.value;"> 
<option value=" http://website.com/2001/">Red</option> 
</select><br> 

<select size="1" name="links" onchange="window.location.href=this.value;"> 
<option value=" http://website.com/3001/">Green</option> 
</select> 

.... और इसी तरह करीब 100 लिंक।
अब मैं लिंक वेबसाइट.com से m.website.com फ़ुरथर लिंक बदलना चाहता हूं। जैसा m.website.com/1001, m.website.com/1002

+0

एक घटना या क्या पर? – PHPglue

+0

एक चयनकर्ता - '$ ('विकल्प')', ['$ .each()'] (http://api.jquery.com/jquery.each/), और '.val *()' – Sean

उत्तर

6

इस प्रयास करें:

$(function(){ 
    $('select[name="links"] option').each(function(){ 
    var val=$(this).val(); 
    val=val.replace('http://','http://m.'); 
    $(this).val(val); 
    }); 
}); 

Demo

+1

धन्यवाद का चयन करें , सही काम करता है :) –

0

बस खोजने के लिए और के सभी उदाहरणों की जगह है ऐसा करने का सबसे आसान तरीका है http://website.com/http://m.website.com/

यदि कुछ ऐसे उदाहरण हैं जिन्हें आप प्रतिस्थापित नहीं करना चाहते हैं तो आप पाठ से मेल खाने के लिए रेगेक्स का उपयोग कर सकते हैं।

की तरह कुछ

(<option value=" http:\/\/)(website)(\.com\/\d+\/">.*?<\/option>) 

का पता लगाएं और

$1m.website$3 
0

के साथ बदलें इस प्रयास करें:

$(document).ready(function() { 
    $('select[name="links"] option').each(function() { 
    var val = $(this).val(); 
    val = val.replace('website.com', 'm.website.com'); 
    $(this).val(val); 
    }); 
}); 
संबंधित मुद्दे