请教js的一个小问题。

一只老菜鸟 2012-02-28 02:38:38
html代码
  <script type="text/javascript">
function CheckInput(obj,type){
var content = type+'content';
alert(content);
alert(obj.content.value);
//问题出在这里,怎么获取不到表单的值呢?
return false;
}
</script>

<form action="save.php" method="post" name="aform" onsubmit="return CheckInput(this,'a')">
<input type="text" name="acontent" />
<input type="submit" name="submit" value="发布" />
</form>
<form action="save.php" method="post" name="bform_1" onsubmit="return CheckInput(this,'b')">
<input type="text" name="bcontent" />
<input type="submit" name="submit" value="发布" />
</form>
<form action="save.php" method="post" name="bform_2" onsubmit="return CheckInput(this,'b')">
<input type="text" name="bcontent" />
<input type="submit" name="submit" value="发布" />
</form>


问题是我这样获取不到所需要的值,js部分应该怎么写?
...全文
165 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
xie_yanke 2012-02-28
  • 打赏
  • 举报
回复
<script type="text/javascript">
function CheckInput(obj,type){
var content = type+'content';

alert(obj.content.value); //对象没有这么组合的。应该改为:obj.elements[content].value;

return false;
}
</script>
asdfsdafsdafsdf 2012-02-28
  • 打赏
  • 举报
回复
<script type="text/javascript">
function CheckInput(obj,type){
var content = type+'content';
alert(content);
alert(obj.firstChild.value);
//问题出在这里,怎么获取不到表单的值呢?
return false;
}
</script>
这么写
Acesidonu 2012-02-28
  • 打赏
  • 举报
回复
为什么不加个id使用
document.getElementById(content).value
使用jquery更简单
$('#'+content).val()
一只老菜鸟 2012-02-28
  • 打赏
  • 举报
回复
看来只能通过html这里来处理了,只要把input的name都改成content就可以调用了。js貌似是没好办法。
libo_sina 2012-02-28
  • 打赏
  • 举报
回复
alert(obj.content.value);
content 这个元素名用变量代替行吗?在这里这种情况可能js会把content直接当做元素名去查找了吧!你这样试试呢:

alert(obj.(+content+).value);
若不行的话你还是就用if去判读吧
一只老菜鸟 2012-02-28
  • 打赏
  • 举报
回复
是的,我是想通过后面的type参数来获取指定表单的值的。
三石-gary 2012-02-28
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 java124628022 的回复:]

alert(obj.acontent.value);
你应该这么写 才能获取到值
[/Quote]
楼主想要的是通过参数获取值。。
Java124628022 2012-02-28
  • 打赏
  • 举报
回复
alert(obj.acontent.value);
你应该这么写 才能获取到值
Java124628022 2012-02-28
  • 打赏
  • 举报
回复
alert(obj.content.value);
你这句话有问题 obj.content 不能点出来 因为表单里没有这个名字的控件
你的content是上面定义的 变量 怎么能在表单对象里点出你自定义的变量呢?
Java124628022 2012-02-28
  • 打赏
  • 举报
回复
<script type="text/javascript">
function submitForm(f){
var form = f;
alert(form.textbox.value);
}
</script>
<form onsubmit="submitForm(this)">
<input type="text" name="textbox" value="123" />
<input type="submit" value="提交" />
</form>

不知道你要实现什么功能 但这样写可以
三石-gary 2012-02-28
  • 打赏
  • 举报
回复
obj.content.value 写法有问题。。虽然上面看content是一个参数但是下面去把它当成了表单的名字。。
document.aform.acontent.value这样是可以得到的。。
Java124628022 2012-02-28
  • 打赏
  • 举报
回复
直接用document.表单名.里面的控件你试试 应该可以

87,990

社区成员

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

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