该解决方案是使用jQuery时钩住JavaScript事件/功能没有真正的最佳实践,但它应该服务器很好地说明了你所需要的机制:
的函数来显示对话框:
function showModalDialog() {
//Declare an overlay to fade out the primary view.
var overlay = $('<div id="overlay" style="position:fixed;overflow:hidden; height: 100%; width: 100%;background-color: rgba(0,0,0,0.5);z-index: 1;" />');
//Declare a dialog to hold the input fields.
var dialog = $('<div id="modal" style="position:absolute;top: 50%; left: 50%;-ms-transform: translate(-50%,-50%);-webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); width:350px; z-index: 2;background-color: white;" />');
//Add content to the dialog.
dialog.append('<h3>Create</h3>');
dialog.append('<label style="display: block;">Data field 1: <input type="text" id="dataField1" /></label>');
dialog.append('<label style="display: block;">Data field 2: <input type="text" id="dataField2" /></label>');
dialog.append('<label style="display: block;">Data field 3: <input type="text" id="dataField3" /></label>');
dialog.append('<input type="button" id="btnCreate" value="use data" onclick="useData();" />');
//Show the overlay and the dialog.
$('html').prepend(overlay);
$('html').prepend(dialog);
}
得到的值,并将它们添加到该表的功能:
function useData() {
//Get the values.
var value1 = $('#dataField1').val();
var value2 = $('#dataField2').val();
var value3 = $('#dataField3').val();
//Append the new values to the table.
$('#data').append($('<tr />')
.append($('<td />').html(value1))
.append($('<td />').html(value2))
.append($('<td />').html(value3))
);
//Remove the overlay and dialog.
$('#overlay').remove();
$('#modal').remove();
}
的jsfiddle展示的代码,但更新的执行事件的挂钩在$(document).ready()
:
http://jsfiddle.net/AUTra/
退房jQuery的附加功能,你可以把数据和附加上点击 – Chitowns24
另一行你至少尝试过什么吗? –
是的,我尝试了几件事,他们都没有工作。我认为这是常用的东西,但我找不到一些简单的工作。 – Bulki