我試圖使用jQuery中的$ .post對象將name:value對發送給php腳本,其中name和value都是變量。我已經將變量發送到FF中的控制檯,因此我知道它們已被正確設置,但是當我查看正在發送的頭時,只有值變量正在被正確計算,名稱將作爲變量的文字字符串發送名稱。這裏是它的全部功能:
$(document).ready(function() {
$('#formS form fieldset > input').blur(function() {
if($(this).val()=='' && $(this).prev().is('img')) {
$(this).prev().remove();
return;
}
if((($(this).is('#formS form fieldset > input[id*=mail]')) ||
($(this).is('#formS form fieldset > input[id*=sername]'))) &&
($(this).val()!="")) {
var email_field = $(this);
if(!$(this).prev().is('img')){
$('<img src="" alt="" style="width: 16px; height: 16px;" />').insertBefore(this);
}
var type = ($(this).is('input[id*=sername]'))?'username':'email';
var value = $(this).val();
$.post('checkemail.php5', {type:value}, function(data) {
if(data == "free") {
email_field.prev().attr('src','/images/greentick.png').attr('alt','available');
} else if(data == "taken") {
email_field.prev().attr('src','/images/redcross.png').attr('alt','taken');
} else {
console.log('hmmm'+data);
}
});
}
});
});
因此,所發送的報頭是文字字符串型,不管值評估爲。任何人有任何想法,爲什麼?
非常感謝 - 完美運作。那麼,只需讓我定義$ .post函數之外的字面值,然後呢? – user97410 2009-10-16 23:45:36
我可以在params中創建許多這樣的名稱值對,並將它們全部傳遞,以便像調用腳本中的php超全局數組那樣進行訪問嗎? – user97410 2009-10-16 23:46:39
是的,你可以按照你想要的方式傳遞許多變量:只需將它們作爲params對象的屬性添加爲params.foo = bar或使用我已經給出的語法。 – 2009-10-16 23:48:39