JQuery 从列表框中获取所选项目并用逗号分隔

发布于 2024-12-04 04:30:47 字数 559 浏览 0 评论 0原文

任何人都可以提供更多帮助吗?我在 jsfiddle 上设置了代码...

http://jsfiddle.net/ justinerswell/feDTU/

我需要获取子字符串中的最后一项并向后填充我需要的字段。

谢谢

原始问题

嗨,我在页面上返回了一个列表框,其中包含多个结果,这些结果正在作为字符串解析为值...

<option value="1 Corn Exchange, The Strand, RYE, East Sussex, TN31 7DB, UNITED KINGDOM">

使用 JQuery 我需要做几件事...

  1. 获取选定值
  2. 通过逗号
  3. 循环拆分选定项目的值,并为每个项目设置一个变量,即国家:英国邮政编码:TN31 7DB 等

有人可以帮助我吗?

谢谢

Can anyone offer more help on this I have the code setup on jsfiddle at...

http://jsfiddle.net/justinerswell/feDTU/

I need to get the last item in the substr and work backwards to populate the fields I need.

Thanks

Original Question

Hi I have a list box returned on a page with multiple result which are being parsed in as a string into the value...

<option value="1 Corn Exchange, The Strand, RYE, East Sussex, TN31 7DB, UNITED KINGDOM">

Using JQuery I need to do a couple of things..

  1. Get Selected Value
  2. Split Value of Selected Item by Comma's
  3. Loop through in revers and set a variable for each item i.e country: United Kingdom Postcode:TN31 7DB etc

Can anyone help me?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

烂人 2024-12-11 04:30:47

您想在点击或提交时获取数据吗?

    $('select').click( function() {

        var selected = $(this).find(':selected').text();

        var substr = selected.split(',');
        var product = substr[0];
        var city = substr[1];
        var postcode = substr[2];
        var country = substr[3];

        //DO SOMETHING WITH IT??
    });

但这不是一个好主意,考虑到你的“数据”结构无法改变(即缺少字段等) - 因为它会破坏索引......

Do you want to fetch the data on click or submit?

    $('select').click( function() {

        var selected = $(this).find(':selected').text();

        var substr = selected.split(',');
        var product = substr[0];
        var city = substr[1];
        var postcode = substr[2];
        var country = substr[3];

        //DO SOMETHING WITH IT??
    });

But its not a very good idea, considering your "data" structure can't change (ie. missing fields and so on) - since it will break on the indexes....

2024-12-11 04:30:47

jquery 有一个用于选择值的选择器。

所以使用

var selectedValue = $('#myselect option:selected').val();

then split 在空间上

var table = selectedValue.split(',');

并在桌子上循环

for(i = 0 ; i < table.length; i++) {
    // dosomething with table[i]
}

jquery has a selector for selected value.

so use

var selectedValue = $('#myselect option:selected').val();

then split on space

var table = selectedValue.split(',');

and loop on your table

for(i = 0 ; i < table.length; i++) {
    // dosomething with table[i]
}
情泪▽动烟 2024-12-11 04:30:47

假设如果你使用 Html 列表框而不是尝试这个

 <select id="Select1" size="4" multiple="multiple" onchange="Check(this);">
 <option value="1">item 1</option>
 <option value="2">item 2</option>
 <option value="3">item 3</option>
 <option value="4">item 4</option>
 <option value="0">All</option>
</select>

javascript

 function Check(selectObject)
  {
   var items = new Array();
   for (var i = 0, j = selectObject.options.length; i < j; i++)
   {
       if (selectObject.options[i].selected)
       {
           items.push(selectObject.options[i].value);
       }
   }
   // selectObject.id holds the "id"
   var itemsToString = items.toString();
   alert(itemsToString);
   //split and get values.
   var s = itemsToString.split(',');
   for(var k=0; k<s.length; k++)
      {
           alert(s[k]);
      }

  }

Hops 它有帮助

suppose if you are use Html Listbox than try this

 <select id="Select1" size="4" multiple="multiple" onchange="Check(this);">
 <option value="1">item 1</option>
 <option value="2">item 2</option>
 <option value="3">item 3</option>
 <option value="4">item 4</option>
 <option value="0">All</option>
</select>

javascript

 function Check(selectObject)
  {
   var items = new Array();
   for (var i = 0, j = selectObject.options.length; i < j; i++)
   {
       if (selectObject.options[i].selected)
       {
           items.push(selectObject.options[i].value);
       }
   }
   // selectObject.id holds the "id"
   var itemsToString = items.toString();
   alert(itemsToString);
   //split and get values.
   var s = itemsToString.split(',');
   for(var k=0; k<s.length; k++)
      {
           alert(s[k]);
      }

  }

Hops its helps

季末如歌 2024-12-11 04:30:47

尝试 $.map() 获取列表中所有选定的项目

var selectedValues = $.map($('#ddlList option:selected'), function (element) {
        return element.value;
    }); 

Try $.map() to get all selected items in list

var selectedValues = $.map($('#ddlList option:selected'), function (element) {
        return element.value;
    }); 
只是一片海 2024-12-11 04:30:47

试试这个简单的方法,在下拉列表框的 onchange() 事件上调用此函数。

函数 FuncFilter() {

     var selectedText = $("#DrpDatefilter").find(':selected').text();
     alert(selectedText );

    **Or** 
     var selectedValue = $("#DrpDatefilter").find(':selected').val();
     alert(selectedValue );

 }

Try this simple, call this function onchange() event of dropdown listbox .

function FuncFilter() {

     var selectedText = $("#DrpDatefilter").find(':selected').text();
     alert(selectedText );

    **Or** 
     var selectedValue = $("#DrpDatefilter").find(':selected').val();
     alert(selectedValue );

 }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文