2013-11-12 4 views
0

Для начала я новичок в Javascript.Динамически установить значение выпадающего списка с помощью строки запроса paramater

У меня есть форма с элементом выбора с различными параметрами, и у меня нет нет доступа для изменения формы. Для параметров нет идентификаторов, а просто значений, как показано в приведенном ниже коде.

<form> 
    <select class="country" name="country" id="countryid"> 
     <option value="usa" selected="selected">USA</option> 
     <option value="canada">Canada</option> 
     <option value="japan">Japan</option> 
     <option value="china">China</option> 
     </select> 
    </form> 

Моя цель - заполнить поле в вышеуказанной форме автоматически на основе параметров URL. Например, www.example.com?country=china следует заполнить Китай в поле формы. Ниже приводится Javascript код:

<script> 
var param1var = getQueryVariable("country"); 

function displayresult(){ 
    //document.getElementById(param1var).selected=true; //if there was id given in  the form field 
     //cannot use document.getElementByValue(param1var).selected=true; 
    //document.querySelectorAll('input[value=' + param1var + ']').selected=true; does not work 
} 

function getQueryVariable(variable) { 
    var query = window.location.search.substring(1); 
    var vars = query.split("&"); 
    for (var i=0;i<vars.length;i++) { 
    var pair = vars[i].split("="); 
    if (pair[0] == variable) { 
     return pair[1]; 
    } 
    } 
} 
</script> 
  1. Я не могу использовать document.getElementById (param1var), потому что нет идентификатора.
  2. Javascript не поддерживает document.getElementByValue (param1var).
  3. document.querySelectorAll не работает.

Есть ли способ, которым я могу ссылаться на элемент, используя значение параметра?

Спасибо!

+0

Вы могли бы просто перебрать варианты, пока вы не найдете значение, которое вы ищете ... – CBroe

+0

дубликат - http://stackoverflow.com/questions/9490906/how-to- change-a-select-value-from-javascript – McAden

+0

Возможный дубликат [Есть ли какой-либо быстрый способ получить