Html:对于 Select multiple,仅提交一个值,但 .val() 返回两个值的数组

2024-04-22

渲染页面时,val()多重选择的设置为单个值。例如,$("#my_select_box").val(1);然后用户在多选框中选择附加值。

提交表单时,仅提交新选择的值,而不提交先前设置的值。而在 Firefox 中调试时,.val()函数返回一个包含两个值的数组(前一个值和新选择的值)。为什么会出现这种情况?


如果您使用 PHP 编程,问题就在那里。当使用多选输入时,PHP 要求您在输入名称后有一对空括号。例如:

<select name="select[]" multiple="multiple">

而不仅仅是

<select name="select" multiple="multiple">

如果您不能或不会这样做(也许您无权访问底层 HTML),那么您也可以像这样捕获 POST 数据:

$data_from_post = file_get_contents("php://input");
var_dump($data_from_post);

你会看到一个像这样的字符串,你可以使用它:

select=one&select=two&select=three&button=submit
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Html:对于 Select multiple,仅提交一个值,但 .val() 返回两个值的数组 的相关文章

随机推荐