我想使用 jqueryui 按钮提交一个表单。我有一些代码,但它不起作用。这是代码:
<script type="text/javascript">
function findUrls()
{
var text = document.getElementById("text").value;
var source = (text || '').toString();
var urlArray = [];
var url;
var matchArray;
// Regular expression to find FTP, HTTP(S) and email URLs.
var regexToken = /\b(http|https)?(:\/\/)?(\S*)\.(\w{2,4})\b/ig;
// Iterate through any URLs in the text.
if( (regexToken.exec( source )) !== null )
{
show_box();// this will show jquery dialog..
return false;
}
}
</script>
<div id="dialog" title="Dialog Title">
<p>Dialog box text.....Dialog box text....Dialog box text</p>
<button id="formSubmit">Click me</button>
</div>
<form name="myForm" id="myForm" action="http://www.bing.com" method="post" onsubmit="return findUrls();">
<textarea id="text"></textarea>
<input type="submit" name="submit" value="send" />
</form>
<script type="text/javascript">
function show_box(){
$(document).ready(function(){
$( "#dialog" ).dialog({
autoOpen: false,
width: 400,
buttons: [
{
text: "Yes",
click: function() {
submit_form();
}
},
{
text: "No",
click: function() {
$( this ).dialog( "close" );
}
},
{
text: "Cancel",
click: function() {
$( this ).dialog( "close" );
}
}
]
});
$( "#dialog" ).dialog( "open" );
});
}
function submi_form(){
var myForm = document.forms['myForm'];
var formSubmit = document.getElementById('formSubmit');
formSubmit.onclick = function(){
myForm.submit();
}
}
</script>
当一个人在文本区域中放置一个链接并提交表单时,会出现带有三个按钮的 jQuery 对话框,我希望当有人单击对话框上的 是
按钮时,表单会自动提交。一切正常,但是当我单击“是”按钮时,它不起作用。
原文由 Gopa Soft 发布,翻译遵循 CC BY-SA 4.0 许可协议
您的 submit_form 函数实际上并没有尝试提交表单。它目前正在“点击我”按钮上添加一个点击事件,如果按下该按钮将提交您的表单。
如果您想单击对话框的“是”按钮提交表单,请尝试以下操作:
还要确保您的 submi_form 方法的名称只是一个拼写错误,而不是在您的实时代码中……您缺少一个“t”。