使用提示框无法完全解决此问题。要解决此问题,您必须制作一个jQuery UI 自定义对话框。
基本上,您在表单标签内制作了一个文本框和两个按钮“OK”和“Cancel”,并将代码嵌入到 Jquery 中,使它们像提示框一样弹出。
我已在此页面http://jqueryui.com/dialog/#default上使用具有默认功能的对话框作为我的基础...
最后给出代码的解释..
这是执行此操作的完整代码...
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>jQuery UI Dialog - Default functionality</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script>
<script>
$(document).ready(function ()
{
$('#dialog').dialog({
autoOpen: false,
width: 250,
height: 180,
modal : true,
resizable: false,
show:"slow"
});
$('#put').click(function() {
$( "#dialog" ).dialog( "open" );
});
});
function getPdata( arg ) { //Function called when Cancel button is pressed
var f = document.getElementById( 'pForm' );
// exit immediately
close();
return;
}
function close(){
$( "#dialog" ).dialog( 'close' );
}
var cnt=1;
function getPdata1() { //function called when ok button is pressed
var f = document.getElementById( 'pForm' );
var n = $("input[name='name']").val();
alert(n.length);
if (n.length <= 10) {
$('<div />',{id:"div" + cnt }).html(n).appendTo('body'); //crated div will have an id as `div`+ count;
} else {
alert('the data you have enterd is not in limit.Please try again');
return;
}
close();
if (cnt < 5) {
f.name.value = "";
$("#dialog").dialog('open');
cnt++;
}
}
function show()
{
document.getElementById("but1").style.visibility="visible";
}
</script>
</head>
<body>
<div>
<button type="button" id="put" >Insert data</button>
</div>
<div id="dialog" title="Input Data"> <!--the actual contebts of dialog box-->
<form id="pForm" >
name: <input type="text" name="name" width='50' height='100' maxlength="10" placeholder="Fill in your data" /><br><br>
<input type="button" value="OK" onclick="getPdata1()" />
<input type="button" value="cancel" onclick="getPdata( this.value )" />
</form>
</div>
</body>
</html>
代码说明..
- 网页上会显示一个按钮。Onclick 将显示一个弹出对话框,其中包含一个文本框和 2 个命令按钮。
- 输入限制为 10 个字符。
- 输入的内容将打印在按钮下方的网页上作为输出。
- 输入将被占用 5 次,因为计数器已经指定,直到 5..
上面的代码可以根据个人需要完全修改..希望这个答案有帮助。如有任何疑问,请随时询问..