【发布时间】:2011-11-25 07:13:40
【问题描述】:
我有一个问题。我有一个带有一个隐藏输入元素的 html 表单。我的 javascript 代码中有一个数组。我想捕捉按下提交按钮事件(通过使用 jquery)并将数组数据推送到隐藏的输入中。
问题是 - 首先会发生什么:表单日期将流向 .php 脚本,或者 javascript 的数组将被推入隐藏输入,然后调用 .php 脚本?为什么会这样?
TIA!
更新(代码示例):
...
// process $_POST['domains']
...
<form action="registration?id=reg" method="post" enctype="multipart/form-data" id="reg_form">
...
<input type="hidden" id="domains" name="domains[]" value=""/>
...
<input type="submit" name="go" value="Register"/>
</form>
<script type="text/javascript">
var domainlist = [];
Array.prototype.indexOf = function (name) {
var ind = -1;
for (var i = 0; i < this.length; i++) {
if (this[i].name == name) {
ind = i;
break;
}
}
return ind;
}
$(document).ready(function() {
...
});
function checkDomain() {
...
req = $.ajax({
type: 'post',
cache: false,
url: 'ajax.php',
data: ...,
success: function(data) {
$('#domain_list_wrap').delegate('input:checkbox', 'click', function () {
var dmnName = $(this).attr('name');
domainlist.push({name: dmnName, cost: domainsArr[dmnName.split('.')[1]]});
...
});
$('#domain_cart').delegate('input:checkbox', 'click', function () {
domainlist.splice(domainlist.indexOf($(this).attr('name')), 1);
...
});
}
});
...
}
</script>
【问题讨论】:
-
如果您将其编码为首先填充隐藏字段,则将首先填充隐藏字段。
-
最好在问题中添加一些代码。要从同一个 HTML 页面传递数组值,您不需要 PHP 来处理它。创建一个 JavaScript 函数并在提交表单时调用它。确保函数返回 FALSE 以阻止页面完成提交到操作页面(在 HTML 表单中)。希望这会有所帮助。
标签: php javascript html