这应该是直截了当但我不知道出了什么问题。
当文本字段上有onblur
事件时,我正在进行ajax调用。 Ajax请求进入后端并获得响应。然后我必须在文本字段旁边添加该响应。但它不起作用。
的 HTML
<input type="text" required="" id="123456" onblur="validateWithDB(this)"></input>
的Javascript
function validateWithDB(field)
{
$.ajax({
type:"POST",
url:"validate",
data: "fieldValue="+field.value,
success: function(response) {
alert(response);// this is correct
alert($(field).val());// this is correct
var result = '<span class="help-inline">'+response+'</span>'
alert(result) // this is correct
$(field).html(result);// Does not show up.
},
error:function (xhRequest, ErrorText, thrownError) {
alert('Error: ' + ' ' + xhRequest);
}
});
}
我尝试了$(field).html(result);
和$(field).append(result);
,但没有运气。
答案 0 :(得分:4)
如果您希望跨越NEXT到输入,请使用.after()
$(field).after(result);
答案 1 :(得分:3)
试试这个:
$(field).val(result);
如果你想在输入后附加span,请使用:
$(field).after(result)
答案 2 :(得分:2)
作为注释中的tymeJV asid,您不能将HTML放在输入标记内。
您可以使用$(field).val(result)
将其设置为值,但这没有多大意义。
或者您可以在使用.after
后插入它:
$(field).after(result);
这将在输入后直接显示结果中的HTML。