在jQuery中处理隐藏字段是否有某种特殊性?我正在使用隐藏的输入字段,但没有收到值。显然,我的代码不正确,如果有人能告诉我错误,我将不胜感激。非常感谢
<input id="customer" name="customer" type="hidden" value="<?php echo $_SESSION['kt_idcode_usr']; ?>" />
$('#submit').click(function () {
var name = $('.uname').val();
var customer = $('.customer').val();
var department = $('#department').val();
var email = $('.email').val();
var position = $('.position').val();
var feedback = $('.feedbacknew').val();
var data = 'uname=' + name +
'&customer=' + customer +
'&department=' + department +
'&email=' + email +
'&position=' + position +
'&feedbacknew=' + feedback;
$.ajax({
type: "POST",
url: "feedback.php",
data: data,
success: function (data) {
$("#feedback").get(0).reset();
$('#message').html(data);
//$("#form").dialog('close');
$("#flex1").flexReload();
}
});
return false;
});
答案 0 :(得分:4)
$('.customer').val(); ???
不是.
,#
结果
$('#customer').val(); // works
答案 1 :(得分:2)
尝试更改
var customer = $('.customer').val();
到
var customer = $('#customer').val();
您在此代码中的任何位置都没有此类客户
答案 2 :(得分:2)
这行代码错误
var customer = $('.customer').val();
您已经按ID而不是按类定义了隐藏字段,因此您需要使用#而不是a。在选择器上
var customer = $('#customer').val();
答案 3 :(得分:1)
你在这里的路线:
var customer = $('.customer').val();
...正在寻找名为“customer”的class
元素。你没有任何这样的元素。您有一个id
“客户”的元素。如果您只是将此行更改为:
var customer = $('#customer').val();
我建议您为其余的输入字段执行此操作。通常,在收集提交表单的值时,您需要id
标识它们。通过class
标识它们通常更适用于样式化不同类型的字段,绑定事件处理程序等等。
答案 4 :(得分:1)
注意区别:
alert($('.customer').val());
和
alert($('#customer').val());
答案 5 :(得分:1)
我可以看到,对于客户,您正在使用jquery选择器“.customer”,它会搜索类名为“customer”的元素,但您的输入的id等于this,所以:
var customer = $('#customer').val();
答案 6 :(得分:1)
我可以建议serialize()吗?