您好我正在尝试让AJAX根据单击的按钮更新表中的字段。我从Flask网站上拿到了这个例子,我正在尝试修改它 现在我只是传递昵称和生日列,我希望javascript做类似的事情:
$.getJSON( '/update_profile2', {
e.attr('id'): e.val(),
我尝试了一些事情,但总是打破它。我需要做些什么来使JS成为保存的可调用函数,如:
<p><a href="" id=save onclick=submit_fn($("#birthday") >Save</a>
当前HTML:
<input type=text size=5 name=nickname id="test" value="{{ profile['nickname']|default('TEST') }}">
<span id=result></span></p><p>
<a href="" id=save >Save</a>
<input type=text size=5 name=birthday id=birthday value="{{ profile['birthday']|default('') }}">
<button id="submitbtn" name="submitbtn" onclick=submitfn1($("#birthday")>SAVE</button>
<span id=result2></span><p><a href="" id=save >Save</a>
当前Javascript:
$(function() {
var submit_form = function(e) {
$.getJSON( '/update_profile2', {
nickname: $('input[name= "nickname" ]').val(),
birthday : $('input[name="birthday"]').val(),
}, function(data) {
$('#result').text(data.nickname);
$('#result2').text(data.birthday);
$('input[name=a]').focus().select();
});
return false;
};
$('a#save').bind('click', submit_form);
$('input[type=text]').bind('keydown', function(e) {
if (e.keyCode == 13) {
submit_form(e);
}
});
$('input[name=nickname]').focus();
});
由于
答案 0 :(得分:0)
我能够让这个工作。我在使用getJSON时遇到了一些麻烦但是能够在Stack上拼凑答案。如果有人可以改进,请做。
function createJSON(className) {
function loadData(link, dataIn)
{
var data = $.getJSON(link, dataIn);
return data;
}
var myClass = className;
$("input[class=" + className + "]").each(function() {
var value = $(this).val();
var item = [];
item[0] = $(this).attr('name') + "=" + value ;
var result;
for(var i = 0; i< item.length; i++)
{
(function(i){
loadData('/update_profile', item[i]).done( function(data) {
$.each( data, function( key, val ) {
var x = ('#' + key);
$(x).text(val);
$('#result2').text(val);
});
$('input[name=nickname]').focus().select();
});
})(i);
}
});
$('input[name=nickname]').focus();
};