Pregunta

I am trying to simulate a javascript to choose from the dropdown list below. I am trying this code here but its not working.

$('select[name="srctype"]').val(2).trigger('change');

Am i doing something wrong here? Is my javascript messed up for this layout of code below?

I am trying to choose value="single"

<select name="srctype" class="formselect" onchange="typesel_change()">
    <option value="any" selected="selected">any</option>
    <option value="single">Single host or alias</option>
    <option value="network">Network</option>
    <option value="pptp">PPTP clients</option>
    <option value="pppoe">PPPoE clients</option>
    <option value="l2tp">L2TP clients</option>
    <option value="wan">WAN subnet</option>
    <option value="wanip">WAN address</option>
    <option value="lan">LAN subnet</option>
    <option value="lanip">LAN address</option>
</select>
¿Fue útil?

Solución 2

Try:

$('select[name="srctype"]').val('single')

or

$('select[name="srctype"] option:eq(1)').prop('selected',1)

As you noted in your comment, this worked for you:

(function ($) {
    $('select[name="srctype"]').val('single');
}).call(this, jQuery);

Otros consejos

Do this:

$('.formselect').val('single').trigger('change');

In your code you're trying to set a val 2 that doesn't exist. The value you're interested is actually single as you mention in your question.

Here's a demo: http://jsbin.com/eXONuhu/1/

var myVal = $('select[name="srctype"] option:eq(1)').attr('value');
$('select[name="srctype"]').val(myVal).trigger('change');

Or an optimized version

var mySelect = $('select[name="srctype"]');
var myVal = $('option:eq(1)', mySelect).attr('value');
mySelect.val(myVal).trigger('change');

Fiddle - http://jsfiddle.net/P6Ayz/1/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top