2

我在表单中使用了一些 ddslick 下拉菜单,我想在提交该表单时获取选定的值。

已经尝试在该菜单附近创建一个隐藏的输入:

<input type="hidden" name="hiddeninput" id="hiddeninput"  />

然后我将选定的值分配给该输入名称:

    $(document).ready(function() {

                //Dropdown Básico
                for (var i=0;i<10;i++){
                $('#dropdownBasico'+i).ddslick({
                    data: ddData,
                    width: 150,
                    imagePosition: "left",
                    selectText: "some texts",
                    onSelected: function(data){
                     if(data.selectedIndex > 0) {
                              $('#hiddeninput').val=selectedData.value;
                            alert(selectedData.value);
                        }  
                    }
                }); 
}

但是我得到的值总是空的。请建议解决方案,并注意我这里有几个菜单(这就是我使用 for 循环来相应更改名称的原因)。我已经研究了一些类似的问题,例如:Get value of selected <option> in ddSlick dropdown and ddslick select options won't post value of selected option - jquery plugin and try them but get no working solution!非常感谢!

4

3 回答 3

1

您以错误的方式设置值

 $('#hiddeninput').val=selectedData.value;
                //---^^^^^ here

在 jquery 中,它应该是

  $('#hiddeninput').val(selectedData.value);

.val()获取指定选择器的值.. .val('test')设置

请注意,我在这里有几个菜单(这就是为什么我使用 for 循环来相应地更改名称)

如果是这种情况,则对所有菜单使用相同的类并使用类选择器

 $('.dropdownBasicoClass').ddslick({
     ....
于 2013-06-12T07:01:31.427 回答
0

试试这个,来源http://designwithpc.com/Plugins/ddSlick#demo

查询

$(document).ready(function() {
    //Dropdown Básico
    for (var i=0;i<10;i++){
    $('#dropdownBasico'+i).ddslick({
        data: ddData,
        width: 150,
        imagePosition: "left",
        selectText: "some texts",
        onSelected: function(data){
         if(data.selectedIndex > 0) {

                alert('Selected value: '+data.selectedIndex);
                alert('Selected text: '+data.selectedData.text);
                alert('Selected description: '+data.selectedData.description);
                
            }  
        }
    }); 
});
于 2013-06-12T06:59:48.007 回答
0
$(document).ready(function() {
      //Dropdown Básico
      for (var i=0;i<10;i++){
      $('#dropdownBasico'+i).ddslick({
          data: ddData,
          width: 150,
          imagePosition: "left",
          selectText: "some texts",
          onSelected: function(data){
             alert(data.selectedData.value);
          }
      }); 
}
于 2017-07-07T13:50:41.040 回答