2015-06-07 3 views
0

Я хочу, чтобы у каждой выпадающей опции была цель «_blank», кроме опции 4. Как переключить цель на основе опции, выбранной в форме?изменить форму цель на основе выпадающего списка

<form action="mypage.php" method="post" target="_blank" /> 
<input type="hidden" name="turnaround" value="20"> 
<table> 
    <tr> 
     <td>Platform</td> 
     <td> 
      <select required id="cu" name="plat" style="min-width: 120px;"> 
       <option value="1">1</option> 
       <option value="2">2 (Desktop Only)</option> 
       <option value="3">3 (Mobile Only)</option> 
       <option value="4">4 (Wildcard)</option> 
       <option value="5">Catch-All</option>   
      </select> 
     </td> 
    </tr> 
    <tr> 
     <td colspan="2">&nbsp;</td> 
    </tr> 
</table> 
<div><input type="submit" value="Select Platform" /></div> 
</form> 
+0

Есть ли какой-либо причине вы не можете жёстко их? Кроме того, [этот пост] (http://stackoverflow.com/questions/2000656/using-href-links-inside-option-tag) может помочь. – jmargolisvt

+1

Также в вашем коде есть опечатка, в конце стартового тега есть '/'. – vinayakj

ответ

0

Проверить это fiddle

ЯШ:

$("#cu").on("change",function(){ 
    var a = $(this).val(); 
    if(a == "4"){ 
     $("#formId").removeAttr("target") 
    }else{ 
    $("#formId").attr("target","_blank") 
    } 

}) 
0

дать вашу форму идентификатор:

<form action="mypage.php" id="myForm" method="post" target="_blank" /> 
<input type="hidden" name="turnaround" value="20"> 
<table> 
    <tr> 
     <td>Platform</td> 
     <td> 
      <select required id="cu" name="plat" style="min-width: 120px;"> 
       <option value="1">1</option> 
       <option value="2">2 (Desktop Only)</option> 
       <option value="3">3 (Mobile Only)</option> 
       <option value="4">4 (Wildcard)</option> 
       <option value="5">Catch-All</option>   
      </select> 
     </td> 
    </tr> 
    <tr> 
     <td colspan="2">&nbsp;</td> 
    </tr> 
</table> 

ваши ЯШ:

$('#myForm').attr("target") = $('#cu').val() == "4" ? "" : "_blank"; 

не проверял, но он должен работать

0

Может быть, вы хотите, чтобы кнопка ввода или идентификатор была отправлена.

$('input[type=submit]').click(function(e){ 
    if($('#cu').val() == '4'){ 
     $(this).closest('form').prop('target','');  
    } 
}); 
Смежные вопросы