js获得table行中列的值,就是checkbox如何获得选中那个获得相应的值

js获得table行中列的值,就是checkbox如何获得选中那个获得相应的值,第1张

你可以使用 JavaScript 中自带的 rowIndex 和 cellIndex 来获取行和列的键值 (从0开始)

点击 checkbox,获取 parentNode (也就是 td),tdcellIndex 就是所在列的键值

点击 checkbox,获取 parentNodeparentNode (也就是 tr),trrowIndex 就是所在行的键值

<script type="text/javascript">

// 点击

documentonclick = function(e) {

// 兼容 event 和 target

e = e || windowevent;

var target = etarget || esrcElement;

// 确认是 checkbox

if(targettagNametoLowerCase() === "input"

&& targettype === "checkbox") {

// 获取行列键值

var row_num = targetparentNodeparentNoderowIndex;

var col_num = targetparentNodecellIndex;

// 输出

alert(row_num + " " + col_num);

}

};

</script>

因为键值是从 0 开始,一般需要 +1 才是行列数,但因为你表单中第一行个第一列都是文字,所以不需要 +1 正好输出需要的数字,例如点击周四 + 6,会输出 4 6

<form id="abc">

  <input type="checkbox" name="ck" />

  <input type="checkbox" name="ck" />

  <input type="checkbox" name="ck" />

  <input type="checkbox" name="ck" />

</form>var form = documentgetElementById('abc');

var input = formck; // 如果有多个相同的名字会返回dom collection(类似数组)

if(input && inputlength) {

    // dom collection

} else if (input) {

    // dom

} else {

    // 没有

}

思路:通过 :checked 筛选 checkbox 选中项,然后进行遍历,利用节点关系获取到input对象,最后使用val()方法获取input的内容。实例演示如下:

1、HTML结构

<table>

    <tr>

        <td><input type="checkbox" name="test"></td>

        <td><input type="text"></td><td><input type="text"></td>

    </tr>

    <tr>

        <td><input type="checkbox" name="test"></td>

        <td><input type="text"></td><td><input type="text"></td>

    </tr>

</table>

<input type="button" value="确定">

2、jquery代码

$(function(){

    $(":button")click(function() {

// 找到选中行的input

var ipts = $(":checkbox:checked")parents("tr")find("input:text");  

// 遍历input并使用val()方法获取值

        str = map(function() {return $(this)val();})get()join(", ");

        alert(str);

    });

});

3、效果演示

密 码:<input type="password" name="password" /><br />教育<input type="checkbox" name="1" value="教育" />IT<input type="checkbox" name="2" value="IT" />会计<input type="checkbox" name="3" value="会计" />秘书<input type="checkbox" name="4" value="秘书" />银行<input type="checkbox" name="5" value="银行" />美食<input type="checkbox" name="6" value="美食" />其他<input type="checkbox" name="7" value="其他" /><br /><select name="select"><option value="北京">北京</option><option value="天津">天津</option><option value="上海">上海</option><option value="深圳">深圳</option></select><br /><input type="submit" value="提交" /></form>

你是要JAVASCRIPT来获得呢!还是ASP提交获得呢??还是???

不清楚你说的是那个获得啊!!!

哦!!!!

JSP我都忘记的差不多了!用一个上面属性来获得啊!!request里面的属性 好像!你自己看看!记得好像里面要注意到编码问题!具体怎么弄 在笔记上面!呵呵帮不料你了!你去查查吧!!倒百度里面查:JSP获取表单值!

>

通常情况下,我们可能会用v-for循环出一堆checkbox,提交数据的时候需要去获取选中的checkbox的value值,之前我的获取方式是给checkbox添加点击事件,这样确实能解决问题,但是总觉得有更好的办法,因为同为form表单元素的文本框就可以使用v-model来实现数据双向绑定,难道checkbox不能实现数据双向绑定吗?

呵呵哒,真的可以,我一直都不知道。。。。。。。。。

<input  type="checkbox"  v-model="checkFlag">

data () {

    return {

            checkFlag: true    //checkbox默认选中

    }

}

上面是最简单的用法,那如果使用场景是:购物车里循环遍历了所有用户添加的商品,用户选中一些商品,去结算,我们需要在结算的时候获取所有选中的checkbox的value值;

页面的大概效果如下:

这里我们给checkbox绑上了v-model的属性,以及value属性,checkedArr是一个数组,用来放选中的itemname,当checkbox选中或者取消都会触发v-model绑定的checkedArr值变化;

强调最重要的一点,v-model会在checkbox选中的时候,自动将当前的value值push进数组;在取消checkbox的时候,自动将当前的value值pop出数组。

以下是依次选中四个商品,然后取消商品4,打印的checkedArr的值

至于全选按钮什么时候选中,那我们可以watch一下checkedArr:

问题并么有解决 , 使用不同的name值 ,并没有实现单选按钮的效果 ,三个按钮仍然能同时选中

const SexRadio=ReactcreateClass({

getInitialState:function(){

return {}

},

render:function(){

return (

<div>

<form name="form1">

<input type="radio" name="radiobutton1" value="radiobutton" checked /> 喜欢

<input type="radio" name="radiobutton2" value="radiobutton" /> 不喜欢

<input type="radio" name="radiobutton3" value="radiobutton"/> 无所谓<br/>

</form>

</div>

);

}

});

ReactDOMrender(<SexRadio/>,documentgetEl

以上就是关于js获得table行中列的值,就是checkbox如何获得选中那个获得相应的值全部的内容,包括:js获得table行中列的值,就是checkbox如何获得选中那个获得相应的值、js 获取form中所有name相同的checkbox、如何用JQuery实现获取checkbox选中的那一行的input中的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9322277.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存