我有以下ajax成功功能。如何在添加jquery之前对结果进行操作?以下代码是我的尝试,但是,第二个控制台语句永远不会写。
查看当前的.filter行。我将此作为我在阅读并尝试不同方法后的最新尝试:Use Jquery Selectors on $.AJAX loaded HTML?
$(function ()
{
$('#myactionlink').click(function (result)
{
$.ajax(this.href, {
success: function (result)
{
console.log((new Date()).getTime() + ' - ' + 'result returned.');
$(result).filter('input[name="RowId"]').each(function (i)
{
var x = (i + 1).toString();
console.log((new Date()).getTime() + ' - ' + 'RowId: ' + x);
$(this).val(x);
});
$('#mypartial').append(result);
}
});
return false;
});
});
返回Html Partial。
<div>
<input id="RowId" name="RowId" type="text" value="">
</div>
$(function ()
{
$('#myactionlink').click(function (result)
{
$.ajax(this.href, {
success: function (result)
{
console.log((new Date()).getTime() + ' - ' + 'result returned.');
var outResult = $(result);
outResult.filter('[name="RowId"]').each(function (i)
{
var x = (i + 1).toString();
console.log((new Date()).getTime() + ' - ' + 'RowId: ' + x);
$(this).val(x);
}).end().appendTo('#mypartial');
}
});
return false;
});
});
答案 0 :(得分:1)
存储对result
的引用,修改它,然后附加它。
var outResult = $(result);
outResult.find('[name="RowId"]').each(...).end().appendTo("#mypartial");
您实际上是使用$(result)
追加原始html并且没有使用您创建的html做任何事情。