在jQuery中,如何获得每组手机的多次下拉列表,例如:
客户可选择一部以上的手机下单。首先,客户需要从下拉(1到15)中选择一些手机。
如果他们从一个下拉列表中选择了5号,那么5组溺水溺水者应该如下所示:
第一组:
Select Phone [Dropdown / load entries via ajax]
Select Contract Length [Dropdown / load entries via ajax]
Select Contract Plan [Dropdown / load entries via ajax]
Select Additional Addon [Dropdown / load entries via ajax]第二组:
Same dropdowns as above
另一个问题是,如果有错误(来自PHP的验证)没有正确填写表单-它将重定向回同一页,但下拉框将需要重新选择。怎样才能让它也起作用呢?
发布于 2012-05-01 22:32:12
非常肯定,您必须带一些变量来表示表单完成的失败,比如进入一个会话或html中的一些隐藏元素,然后在文档加载时检查该变量,然后手动调用这些下拉列表。
或
不允许单击submit按钮并检查javascript中的验证。然而,它不会是那么安全,但它将为您和用户节省麻烦。我自己更希望在单击submit之前检查表单,只需等待几秒钟,直到页面被重新加载,而我面临的事实是,我选择了/写错了什么。
或
使用xmlhttprequest或类似于submit单击之类的东西自动验证,js访问php文件、验证、返回结果并允许提交数据。不会很安全但是..。您可以使用相同的php文件再次检查该文件(如果有人试图非法传递一些数据,而不是通过表单,而xmlhttprequest未能捕获它,则会被捕获)。对用户来说是最安全和最好的方式。
发布于 2012-05-01 22:38:22
假设这个标记:
<select id="qty">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>
<div id="placeholder"></div>使用这个JavaScript:
$('#qty').change(function() {
var qty = $('#qty').val() * 1;
$('#placeholder').html(''); //Clear existing.
for (var i = 0; i < qty; i++)
{
$('#placeholder').append(
'<select id="phone_' + i + '"></select>');
}
});在您的PHP脚本中,您需要检查每个可能的字段名--潜在的征税,在提交之前最好将它们组合到一个隐藏的字段中。
看起来@AndriusNaruševičius已经回答了你问题的另一半。
https://stackoverflow.com/questions/10405209
复制相似问题