添加空格 and/or 在 jQuery 中值输入字段的变量的串联文本中打断
Add spaces and/or breaks in concatenated text from variables of values input fields in jQuery
尝试获取一些空格 and/or 文本区域中断,其内容根据基于 o 值的输入的数量和类型动态添加。一切正常,除了文本区域,其中所有值都作为字符串添加在一起,没有任何中断或空格。尝试在它们周围添加 div,但 textarea 不允许它们,因此不显示它。
希望有人可以帮助我进一步解决这个问题。非常感谢任何帮助。
html:
<select class="categoryName1 changeFields" name="chipsCategory">
<option value="Category_1">Category 1</option>
<option value="Category_2">Category 2</option>
<option value="Category_3">Category 3</option>
</select>
<select class="chipsTaste1 changeFields" name="chipsTaste">
<option value="brand1">Brand 1</option>
<option value="brand2">Brand 2</option>
<option value="brand3">Brand 3</option>
</select>
<textarea id="pasteTotal"></textarea>
js:
var allOrders = $('.changeFields').val();
$('#pasteTotal').append(allOrders);
非常感谢您提供的所有可能的帮助。
抱歉大代码转储,感谢您的帮助。
在显示的代码中...$('.changeFields').val()
只会 return 匹配选择器中第一个元素的值。如果您想要所有这些元素的值,则需要遍历所有这些元素。
您可以通过多种方式执行此操作,例如 $.each
并在每次迭代时连接字符串,或者我更喜欢使用数组。
$.map
创建可用于将一个数组映射到另一个数组。在这种情况下,它是元素数组....return值数组,然后可以将其与您想要的任何定界符连接
var $selects = $('.changeFields').change(function () {
// make array of the select values
var allOrders = $.map($selects, function (el) {
return el.value;
});
// join array with comma and space and add to textarea
$('#pasteTotal').val(allOrders.join(', '));
})
我在选择上使用了 change
处理程序,以便能够演示处理程序中的代码。该代码可以适应您当前使用的任何其他事件代码
尝试获取一些空格 and/or 文本区域中断,其内容根据基于 o 值的输入的数量和类型动态添加。一切正常,除了文本区域,其中所有值都作为字符串添加在一起,没有任何中断或空格。尝试在它们周围添加 div,但 textarea 不允许它们,因此不显示它。
希望有人可以帮助我进一步解决这个问题。非常感谢任何帮助。
html:
<select class="categoryName1 changeFields" name="chipsCategory">
<option value="Category_1">Category 1</option>
<option value="Category_2">Category 2</option>
<option value="Category_3">Category 3</option>
</select>
<select class="chipsTaste1 changeFields" name="chipsTaste">
<option value="brand1">Brand 1</option>
<option value="brand2">Brand 2</option>
<option value="brand3">Brand 3</option>
</select>
<textarea id="pasteTotal"></textarea>
js:
var allOrders = $('.changeFields').val();
$('#pasteTotal').append(allOrders);
非常感谢您提供的所有可能的帮助。
抱歉大代码转储,感谢您的帮助。
在显示的代码中...$('.changeFields').val()
只会 return 匹配选择器中第一个元素的值。如果您想要所有这些元素的值,则需要遍历所有这些元素。
您可以通过多种方式执行此操作,例如 $.each
并在每次迭代时连接字符串,或者我更喜欢使用数组。
$.map
创建可用于将一个数组映射到另一个数组。在这种情况下,它是元素数组....return值数组,然后可以将其与您想要的任何定界符连接
var $selects = $('.changeFields').change(function () {
// make array of the select values
var allOrders = $.map($selects, function (el) {
return el.value;
});
// join array with comma and space and add to textarea
$('#pasteTotal').val(allOrders.join(', '));
})
我在选择上使用了 change
处理程序,以便能够演示处理程序中的代码。该代码可以适应您当前使用的任何其他事件代码