我有一个调用 jQuery.get()
函数的链接,该函数返回更多要附加到调用容器的 jQuery 脚本。数据正在返回,但没有被执行,只是简单地打印到页面上。
电话:
$('<a/>').attr('href', "#").addClass('link-button').html("Add New").on('click', function () {
Loader.Show();
$.get("webservice.php", {news: "addnew"}, function (data) {$("#page").empty().append(data);});
return false;
});
返回的数据:
$('<form/>').attr('action', "webservice.php").attr('method', "post").append(
$('<input/>').attr('type', "hidden").attr('name', "news").val("add"),
$('<p/>').append(
"Title:",
$('<input/>').attr('type', "text").attr('name', "title").attr('data-required', "true").on('focusout', function () {
if($(this).val() == "") {$(this).addClass('required');} else {$(this).removeClass('required');}
})
),
$('<p/>').append(
"Text:",
$('<input/>').attr('type', "text").attr('name', "text").attr('data-required', "true").addClass('paragraph').on('focusout', function () {
if($(this).val() == "") {$(this).addClass('required');} else {$(this).removeClass('required');}
})
),
$('<p/>').append(
$('<input/>').attr('type', "submit").val("Post"),
$('<span/>').addClass('availabletext')
)
).on('submit', function () {
Loader.Show("Posting...");
$(this).find('[type=submit]').attr('disabled', "disabled");
var gtg = true;
$(this).find('[data-required=true]').each(function () {
if($(this).val() == "") {
$(this).addClass('required');
gtg = false;
} else {
$(this).removeClass('required');
}
});
if($(this).find('[data-type=vote]').val() == "No" && $(this).find('[data-type=comment]').val() == "") {
$(this).find('[data-type=comment]').addClass('required');
gtg = false;
} else {
$(this).find('[data-type=comment]').removeClass('required');
}
if(gtg) {
return true;
} else {
$(this).find('[type=submit]').removeAttr('disabled', "disabled");
Loader.Hide();
return false;
}
}).ajaxForm({success: function (data, textStatus, jqXHR) {
$(this).parent().empty().append(data);
}, error: function () {
$(this).append("Server timeout, please try again...");
$("#submit-button").removeAttr('disabled');
Loader.Hide();
}});
问题是返回的代码实际上是打印到页面上,而不是被处理和执行。这可能吗?我错过了什么吗?