小菜 求教一个表单提交的小问题!

anszboy 2009-07-07 08:35:23
怎么在表单提交时候执行完我指定的一个函数(见下),然后再实现提交?

我修改一个官方程序,增加一个函数,为了在用户提交表单时,给其在文本编辑框中输入的内容附加上其选定的一个input option,我增加的这个函数本身是没有问题的,测试是通过的,但是在提交时却发现没有去执行这个函数而是直接提交了表单,是什么原因呢?


原来的提交是这样的:
<input type="submit" value="我要发布" class ="button" onclick ="return CheckInfo();" />


我修改的后是:


<input type="submit" value="我要发布" class ="button" onclick ="return CheckInfo();addTocontent;" />


我要执行的函数是:

function addTocontent() //++附加内容到文本框
{
var obj_fckeditor = FCKeditorAPI.GetInstance('myedit');
obj_fckeditor.Focus();
var textvalue=obj_fckeditor.GetXHTML();

var chkpix=document.getElementsByName('items');
for (var i=0;i<chkpix.length;i++)
{
if(chkpix[i].checked == true)
{
var k=i+1;
textvalue+=eval("document.getElementById('msginfo'+k).innerHTML");
}
}
obj_fckeditor.SetHTML(textvalue);

}


我是不是应该把函数放在官方的CheckInfo()中?

官方的CheckInfo()函数是:

function checkinfo()
{
try{
if($F("hidTypeId")=="" || $F("hidTypeId")=="0")
{
return alertmsg(false,'请选择信息类别!');
}}catch(e){}


var content = FCKeditorAPI.GetInstance('myedit').GetXHTML(true); //取得FCKeditor文本编辑器中输入的内容

if(content=="")
{
return alertmsg(false,'详细说明为必填项,请检查!');
}

if($("datetype").value != "True")
{
if($("EndDate").value=="")
{
return alertmsg(false,'请选择信息有效时间!');
}
}
}


本人初学,希望前辈们不吝赐教!!!不胜感激!!!
...全文
75 16 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
zlw927 2009-07-09
  • 打赏
  • 举报
回复
谢谢gaobaiy,我也有同样的问题,就是没设返回值^_^已经解决了
gaobaiy 2009-07-08
  • 打赏
  • 举报
回复
你把两个function合起来,作为一个,让其有一个确定的返回值,且为false or true
gaobaiy 2009-07-08
  • 打赏
  • 举报
回复
return function()这个的语法之所以能够阻止提交,是因为他会返回一个false;
如果他不能阻止提交,那就是没有正常的返加false;

你看看你需要执行的函数返回false了吗?
anszboy 2009-07-08
  • 打赏
  • 举报
回复
我是楼主,还是没有解决的,函数本身是没有问题的,是提交方式不对吧,又该怎么改?
ldhsun 2009-07-07
  • 打赏
  • 举报
回复

<input type="button" value="我要发布" class ="button" onclick ="return addTocontent();" />
但要把checkinfo函数内容并到addTocontent()里
xuexijava 2009-07-07
  • 打赏
  • 举报
回复
<input type="button" value="我要发布" class ="button" onclick ="return CheckInfo();" />
APOLLO_TS 2009-07-07
  • 打赏
  • 举报
回复
你已经接近成功的彼岸了!
buy_soya 2009-07-07
  • 打赏
  • 举报
回复
onclick改为onSubmit
验证不通过返回false则不会提交,反知返回true就可以提交了
小霍夫 2009-07-07
  • 打赏
  • 举报
回复
路过.
zm_hs 2009-07-07
  • 打赏
  • 举报
回复
不可以在 addTocontent 该函数里调用 checkinfo函数吗?
fanyuanwaifdl 2009-07-07
  • 打赏
  • 举报
回复
sf
wangzhang1215 2009-07-07
  • 打赏
  • 举报
回复
studying
guan6487809 2009-07-07
  • 打赏
  • 举报
回复
在<form>标签中 有个 onSubmit属性,在这个属性上执行你要的函数 然后返回true,就会执行你需要的函数了!
gaobaiy 2009-07-07
  • 打赏
  • 举报
回复
<input type="submit" value="我要发布" class ="button" onclick ="return CheckInfo();addTocontent;" />

这种情况下,addTocontent; 他只是一个变量,页不会执行;改成:

<input type="submit" value="我要发布" class ="button" onclick ="return CheckInfo();addTocontent();" />
givenyan 2009-07-07
  • 打赏
  • 举报
回复
在addTocontent函数的最后写个alert看看这个程序有没有被执行,如果没有被执行,那么很可能是你的js写错啦

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧