這看起來很奇怪,但我希望能夠使用通過GET參數列表傳入的值填充靜態Web窗體。使用jQuery重置來自GET url params的輸入值
說我有一個頁面,「self.html」:
<form action="self.html" method="get" accept-charset="utf-8">
<label for = "40">New Question?</label>
<input type="radio" name="40" id="40" value="Yes"> Yes
<input type="radio" name="40" id="40" value="No"> No
<label for = "41">What's your favourite colour?</label>
<input type="text" name="43" value="" id="41">
</form>
我需要的表格,每當輸入更改提交自己:
$(document).ready(function(){
$('input').change(function(){
$("form:first").submit();
});
// collate_results();
});
但很明顯,我想保留值,以便它們在重新加載時不會重置。 (爲什麼?因爲我在FileMaker Web視圖中執行此操作,並且將數據從表單中提取出來的唯一方法是獲取源代碼 - url並對其進行解析...因此我需要將url更新以反映形式的當前狀態,並且還能夠在任何新的記錄,我要顯示的數據傳遞...)
UPDATE:
這裏是我的非工作的代碼 - 它的罰款單值字段,但單選按鈕失敗...
$('input').change(function(){
$("form:first").submit();
});
var qString = jQuery.url.attr("query");
if(qString) {
qString = qString.split("&");
$(qString).each(function() {
var parts = this.split("=");
var item = $('#'+parts[0]);
if($(item).attr('type') == 'text') {
$('#'+parts[0]).val(parts[1]);
};
if($(item).attr('type') == 'radio') {
$(item).each(function() {
console.log(this);
if($(this).val() == parts[1]) {
$(this).attr('checked','checked');
} else {
$(this).attr('checked','');
}
});
};
})
}
});
問題是我將有多個單選按鈕,其值爲yes,no,na,因此jQuery想要這樣做的方式似乎不適用。我可以重新標識單選按鈕,如果有幫助...
<form action="self.html" method="get" accept-charset="utf-8">
<label for = "40">New Question?</label>
<input type="radio" name="47" id="47_yes" value="Yes">Yes
<input type="radio" name="47" id="47_no" value="No" checked> No
<label for = "48">What's your favourite colour?</label>
<input type="text" name="48" value="" id="48">
</form>
爲的FileMaker讀書,我需要設置在該GET PARAMS表單輸入值URL不知道AJAX如何在這種情況下提供幫助。 我正在使用jQuery.url.attr(「查詢」)來獲取查詢字符串...現在只需要弄清楚如何重置GET參數中的單選按鈕而不更改名稱或ID ... – Dycey 2009-10-20 15:59:13
那麼,如果你有那麼它應該只是填充值 - '$('input [name ='+ urlParam [i] .name +']')。val(urlParam [i] .value);' – 2009-10-20 19:14:49
.. 。除了單選按鈕... – Dycey 2009-10-22 10:09:04