2009-09-18 25 views
5

URL'nizi html seçerek değiştirmenin en iyi yolu nedir?URL'yi html ile değiştirme seçin

JavaScript kullanılması gerektiğini ne
<select> 
<option selected="selected">Change to URL X</option> 
<option>Change to URL Y</option> 
</select> 

?

+0

[http://www.cs.tut.fi/~jkorpela/forms/navmenu.html](http://www.cs.tut.fi /~jkorpela/forms/navmenu.html) iyi bir rehbere sahiptir (bu, bunu yapmamanız için bazı iyi nedenler içerir). – Quentin

cevap

-3

target Bazı yararlı değerleri 'window' (şimdiki pencere olabilir bu

<select onchange="jumpMenu('parent',this)> 
<option selected="selected">Change to URL X</option> 
<option value="http://www.example.com">Change to URL Y</option> 
</select> 
+3

-1. Eval() işlevini kullanmayın. Burada gerekli değil ve gerçekten kötü bir uygulama. http://blogs.msdn.com/ericlippert/archive/2003/11/01/53329.aspx ... http://www.jslint.com/lint.html ve diğerleri –

6
<script type="text/javascript"> 
function navigateTo(sel, target, newWindow) { 
    var url = sel.options[sel.selectedIndex].value; 
    if (newWindow) { 
     window.open(url, target, '--- attributes here, see below ---'); 
    } else { 
     window[target].location.href = url; 
    } 
} 
</script> 

<select onchange="navigateTo(this, 'window', false);"> 
<option selected="selected" value="http://www.example.com/#X">Change to URL X</option> 
<option value="http://www.example.com/#Y">Change to URL Y</option> 
</select> 

gibi daha sonra örnek başlığındaki

<script language="JavaScript" type="text/javascript"> 
function jumpMenu(targ,selObj,restore){ 
    eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'"); 
} 
</script> 

böyle bir şey ve seçme kutusu için görünüyor ekleyerek) veya 'top' (çerçeve kümesinden veya iframe'den kurtulmak için). Bunun yerine, yeni bir pencere açmak isterseniz, '--- --- nitelikleri' navigateTo(this, 'someWindow', true);

değeri kullanabilirhere for Mozilla ve here for IE belgelenmiş gibi çeşitli özelliklerini kullanarak ayarlanır. Örneğin:.

$ ('# select_url') değişiklik (function (Evnt) {location.href = $: jQuery varsa

'height=300,width=400,top=100,left=100,statusbar=0,toolbar=1' 
+0

Mükemmel! Yukarıdaki kod sorunsuz çalışır. –

5

Eğer

javascript ... yapabileceğini (bu) .val();});

html:

...