Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery中的数据绑定属性值_Jquery_Html_Knockout.js - Fatal编程技术网

jquery中的数据绑定属性值

jquery中的数据绑定属性值,jquery,html,knockout.js,Jquery,Html,Knockout.js,我有一个从数据库绑定的复选框列表,复选框的Id在data bind属性的帮助下被绑定,当用户单击submit按钮时,我正在遍历复选框列表并检查复选框是否被选中,如果被选中,那么我想获得复选框的Id <input type="checkbox" class='roles' name='roles' data-bind="attr: { value: Id }" /> 我实际上想要得到这个值data bind=attr:{value:Id} 但是在alertbox中,我以data b

我有一个从数据库绑定的复选框列表,复选框的Id在data bind属性的帮助下被绑定,当用户单击submit按钮时,我正在遍历复选框列表并检查复选框是否被选中,如果被选中,那么我想获得复选框的Id

<input type="checkbox"  class='roles' name='roles' data-bind="attr: { value: Id }" />
我实际上想要得到这个值data bind=attr:{value:Id}


但是在alertbox中,我以data bind=attr:{value:Id}的形式获取消息,在这里,我想获取1,2 etc,但获取数据属性的语法不正确。您需要使用:

$(this).data('bind')
您可以这样做:

var value = $(input).data("bind");
var value =$(input).attr("data-bind");
或者这样:

var value = $(input).data("bind");
var value =$(input).attr("data-bind");
但在alertbox中,我得到的消息是data bind=attr:{value:Id},其中我想要得到1,2等

对,数据绑定的值没有改变。如果需要value属性的值,则需要获取该值:

alert(input.val());
:

旁注:Knockout具有用于设置表单控件值的值绑定:

<input data-bind="value: Id">

实际上,给定的语法也可以工作。若您调用不带参数的数据,那个么将返回一个对象,其中的信息作为属性存储在该对象上。这大约是你链接页面的四分之三。示例:我在messagebox中以data bind=attr:{value:Id}的形式获得消息,事实上,问题就隐藏在问题的末尾:OP获得的是data bind的值,而不是他们期望得到的值。你救了我一天。谢谢。是的,但它没有回答为什么OP所做的有效操作不起作用的问题。我在messagebox中得到的消息是data bind=attr:{value:Id}你是说data.bind in valid?@EhsanSajjad:Yes,.data.bind no是有效的。请注意,在var input=$this之后,input已经是一个jQuery实例。然后无需通过执行$input重复$input。这是无害的,但毫无意义。