Javascript 将json放在模态中
我有一个从pho函数返回的JSON数据,如下所示:Javascript 将json放在模态中,javascript,jquery,json,twitter-bootstrap,Javascript,Jquery,Json,Twitter Bootstrap,我有一个从pho函数返回的JSON数据,如下所示: [{"id":"15","activity_type":"call","activity_title":"Call to check "}] 这里是启动请求的脚本(actvity.js)(已编辑) 需要显示值的模态: <div class="modal fade" id="view-contact-activity" tabindex="-1" role="basic" aria-hidden="true"> <di
[{"id":"15","activity_type":"call","activity_title":"Call to check "}]
这里是启动请求的脚本(actvity.js)(已编辑)
需要显示值的模态:
<div class="modal fade" id="view-contact-activity" tabindex="-1" role="basic" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-body">
<div class="portlet-body form">
<form class="form-horizontal" role="form" id="view-contact-activity-form" method="post">
<div class="form-group">
<label class="col-sm-3 control-label col-lg-3"> Activity Title</label>
<input type="text" name="activity_id" id="activity_id" value="">
<label class="col-sm-3 control-label col-lg-3"> Activity Type</label>
<input type="text" name="activity_type" id="activity_type" value="">
<div class="modal-footer">
<div class="col-lg-offset-2 col-lg-10">
<button type="submit" name="create-new-account" class="btn btn-danger" id="edit">Edit Activity</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
谢谢。使用.val()而不是.html()
修改:您的javascript应该如下所示:
$(document).on("click", ".view_contact_activity", function () {
var this_activity_id = $(this).closest('.feeds').find('#this_activity_id').val();
$('#view-contact-activity').modal('show');
$.ajax({
url: '../includes/functions/contact-functions.php',
data: {view_activity_id:this_activity_id},
dataType:'json',
Success: function(response){
$('#activity_id').val(response[0].id);
$('#activity_type').val(response[0].activity_type);
}
});
});
在多个地点挖掘后。我发现一个类似的问题可能会有所帮助
$(document).on("click", ".view_contact_activity", function () {
var this_activity_id = $(this).closest('.feeds').find('.id #this_activity_id').val();
$('#view-contact-activity').modal('show')
$('#view-contact-activity').on('show.bs.modal', function() {
$modal = $(this);
$.ajax({
url: '../includes/functions/contact-functions.php',
data: {view_activity_id:this_activity_id},
dataType:'json',
success: function(response){
// Find the elements in the modal
$modal.find('#activity_id').val(response[0].id);
$modal.find('#activity_type').val(response[0].activity_type);
}
});
});
});
我认为它会在您调用
.modal('show')
时捕获HTML,并将其复制到一个单独的div,因此您的HTML更改没有任何效果,因为它们发生在modal已经打开之后。尝试移动$('#查看联系人活动')。模式('show')代码>到ajax成功回调的底部。@MattBrowne我尝试过,没有改变。我在关闭ajax请求后放置。尝试了。没什么了。当我键入(response.id或response.activity_type)时,(id)会高亮显示,但activity_type不会高亮显示。不确定这是否有区别。当您放置一个console.log(响应)时会发生什么;在firebug(html)中获得.Success?后,我正确地获得了数组。[{“id”:“12”,“activity_type”:“meeting”,“activity_title”:“meeting”,“activity_details”:“ds”,“activity_status”:“}这里有一个提琴,显示它正在工作(稍加修改…)关于val()而不是html()的好消息,但据我所知,他的HTML并没有出现错误。XHTML不是必需的,而且可以说是有害的,除非您确定MIME类型正确。请参阅
$('#activity_id').val(response.id);
$('#activity_type').val(response.activity_type);
$(document).on("click", ".view_contact_activity", function () {
var this_activity_id = $(this).closest('.feeds').find('#this_activity_id').val();
$('#view-contact-activity').modal('show');
$.ajax({
url: '../includes/functions/contact-functions.php',
data: {view_activity_id:this_activity_id},
dataType:'json',
Success: function(response){
$('#activity_id').val(response[0].id);
$('#activity_type').val(response[0].activity_type);
}
});
});
$(document).on("click", ".view_contact_activity", function () {
var this_activity_id = $(this).closest('.feeds').find('.id #this_activity_id').val();
$('#view-contact-activity').modal('show')
$('#view-contact-activity').on('show.bs.modal', function() {
$modal = $(this);
$.ajax({
url: '../includes/functions/contact-functions.php',
data: {view_activity_id:this_activity_id},
dataType:'json',
success: function(response){
// Find the elements in the modal
$modal.find('#activity_id').val(response[0].id);
$modal.find('#activity_type').val(response[0].activity_type);
}
});
});
});