Select elemanı 2 değerleri dönmelidir

2 Cevap php

I have a select box with options in it. The value of the options gets the id of the item that is displayed in each option.
I do have an other value that should be linked on this option. Is there an easy way to do this?

<select id="category" name="data[cat]">
<option value="12" label="0">A</option>
<option value="7" label="0">B</option>
</select>

I tried to do this with entering the second value into a label attribute but then the problem is that I don't know the correct way to get the label value of the selected option. This is written in jQuery.

Ben kullanmak seçilen seçenek almak için:

$("#category").livequery('change', function () {            
      var catId = ($(this)[0].value); 
});

This works great, but I just don't know how to get the label value of the selected option. Or maybe a better way to solve this problem.

2 Cevap

label özellik seçeneği içeriğini görüntülemek için bazı tarayıcılar tarafından kullanılır, bu nedenle liste kutusu iki 0 seçeneklerini görüntülemek olabilir.

Daha iyi bir çözüm aşağıdakileri yapmak için olabilir:

<select id="category" name="data[cat]">
    <option value="12,0">A</option>
    <option value="7,0">B</option>
</select>

ve olay işleyicisi değerini bölünmüş, örneğin

$("#category").livequery('change', function () {            
    var values = ($(this)[0].value).split(",");
    var catId = values[0];
    var otherId = values[1];
});

Yollarından biri gibi bir JSON string olarak seçeneğinin değerini ayarlamak için

<select id="category" name="data[cat]">
    <option value="{value1:10, value2:20}" label="0">A</option>
    <option value="{value1:30, value2:40}" label="0">B</option>
</select>

Ve sonra JSON nesne olarak değerini ayrıştırmak. Eğer JSON nesnesi aldıktan sonra sonra aynı bireysel değer elde edebilirsiniz. İstediğiniz kadar bu şekilde sizin gibi birçok değerleri ekleyebilirsiniz.