2013-12-18 4 views
0

У меня есть форму на странице, которая находится на php. Ниже перечислены три функции ниже.опция jQuery выбрана наполовину работающая

Что я хочу достичь, так это то, что два выбирают значение GET и выбирают себя в нужное значение.

Порядок заказа отлично работает, но заказСелл нет. Я не знаю, почему, и это моя проблема.

Вот функции:

function loadOrderButton() 
{ 
    echo "<form name=\"input\" action=\"colview.php\" method=\"get\"> 
     <select onchange=\"this.form.submit()\" class=optionText3 name=\"orderSel\" id=\"orderSel\"> 
      <option class=optionText value=\"\">ORDER BY</option> 
      <option class=optionText value=\"name\">Name</option> 
      <option class=optionText value=\"overall\">Overall</option> 
      <option class=optionText value=\"skt\">Skating</option> 
      <option class=optionText value=\"sht\">Shooting</option> 
      <option class=optionText value=\"hnd\">Hands</option> 
      <option class=optionText value=\"chk\">Checking</option> 
      <option class=optionText value=\"def\">Defense</option> 
      <option class=optionText value=\"faceoff\">Faceoffs</option> 
     </select> 
     <input type=hidden name=\"l\" value=".$_GET[l]."> 
     <input type=hidden name=\"t\" value=".$_GET[t]."> 
     <input type=hidden name=\"orderType\" value=".$_GET[orderType]."> 
     </form>"; 
} 

function loadOrderTypeButton() 
{ 
    echo "<form name=\"input\" action=\"colview.php\" method=\"get\"> 
     <select onchange=\"this.form.submit()\" class=optionText3 name=\"orderType\" id=\"orderType\"> 
      <option class=optionText value=\"DESC\">DESC</option> 
      <option class=optionText value=\"ASC\">ASC</option> 
     </select> 
     <input type=hidden name=\"l\" value=".$_GET[l]."> 
     <input type=hidden name=\"t\" value=".$_GET[t]."> 
     <input type=hidden name=\"order1\" value=".$_GET[orderSel]."> 
     </form>"; 
} 

function setLoadOrder() 
{ 
    echo "<script>  
     var el = jQuery('select#orderSel option[value=\"".$_GET[orderSel]."\"]'); 
     var el = jQuery('select#orderSel option').filter(function(){return jQuery(this).text()==\"".$_GET[orderSel]."\"}); 
     el.attr(\"selected\", \"selected\"); 
     var el = jQuery('select#orderSel option:selected'); 
     el.text(); 

     var el = jQuery('select#orderType option[value=\"".$_GET[orderType]."\"]'); 
     var el = jQuery('select#orderType option').filter(function(){return jQuery(this).text()==\"".$_GET[orderType]."\"}); 
     el.attr(\"selected\", \"selected\"); 
     var el = jQuery('select#orderType option:selected'); 
     el.text(); 
     </script>"; 
} 

Спасибо большое за помощь, ребята.

ответ

0

Вы отфильтровываете параметры на основе его отображаемого текста, а не его значения, это работает для orderType, потому что его текст и значения такие же, но не для orderSel.

Используйте значение вместо этого.

jQuery('#orderSel option').filter(function(){return jQuery(this).val()==\"".$_GET[orderSel]."\"}); 

Если вы хотите установить выбранный вариант можно просто передать значение опциона по сравнению со значением выбора-х

jQuery('#orderSel').val(optionValue); 
+0

Спасибо большое, работал как шарм – injurer001

Смежные вопросы