2012-07-11 93 views
4

我是jquery的新手,並試圖從PHP學院修改基本腳本。jquery,發佈多個變量

jquery的腳本是:

<script type="text/javascript"> 
function get() { 
    $.post('getpeopleinjobs.php', { 
     postvarfname: form.firstname.value, 
     postvarlname: form.d = surname.value 
    }, function(output) { 
     $('#age').html(output).show(); 
    }); 
} 
</script> 

和我的表單代碼:

<form name="form"> 
    <input type="text" id="firstname"> 
    <input type="text" id="surname"> 
    <input type="button" value="get" onclick="get();"> 
    </form> 

這完美地工作,當我路過只是一個變量,我的代碼片段是:

$.post('getpeopleinjobs.php', { 
    postvarfname: form.firstname.value 
} 

我然後嘗試添加第二個變量與

$.post('getpeopleinjobs.php', { 
    postvarfname: form.firstname.value, 
    postvarlname: form.d = surname.value 
} 

它現在在Internet Explorer中不起作用,但有趣的是,它在Chrome中工作嗎?

對於初學者有什麼建議=

+2

你確定你的意思是有字符'D ='坐在第二個值?所以,它應該讀取'$ .post('getpeopleinjobs.php',{postvarfname:form.firstname.value,postvarlname:form.surname.value}' – 2012-07-11 16:26:17

回答

8

你倒有正確的概念,但有似乎是一個小的失誤

//Posted Code 
$.post ('getpeopleinjobs.php',{postvarfname: form.firstname.value,postvarlname: form.d=surname.value} 
// Fixed Code 
$.post ('getpeopleinjobs.php',{postvarfname: form.firstname.value, postvarlname: form.surname.value} 
5

您的post代碼一個錯字:

$.post('getpeopleinjobs.php',{ 
    postvarfname: form.firstname.value, 
    postvarlname: form.surname.value 
}, function() { /* ... */ }); 

應該正常工作。

4

看起來您的腳本中存在問題。刪除=標誌:

$.post ('getpeopleinjobs.php',{postvarfname: form.firstname.value,postvarlname: form.surname.value}); 

你也可能只是想要寫腳本:

$.post ('getpeopleinjobs.php',$(form).serialize()); 

如果添加附加字段的形式,你不必修改腳本這樣。

+0

您好約翰,你能詳細說明serialze函數嗎?表單數據到下一頁?謝謝 – Smudger 2012-07-11 17:55:47

+1

是啊,序列化函數序列化所有的孩子'輸入'元素到URL編碼的文本字符串http://api.jquery.com/serialize/ – 2012-07-11 19:13:21

+0

謝謝約翰,感謝它。在上面。 – Smudger 2012-07-11 21:44:18