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
Javascript 附加D3时表单验证不起作用_Javascript_Html_Jquery_D3.js - Fatal编程技术网

Javascript 附加D3时表单验证不起作用

Javascript 附加D3时表单验证不起作用,javascript,html,jquery,d3.js,Javascript,Html,Jquery,D3.js,我使用d3构建了一个带有单选按钮的表单,如下所示: var评级形式=d3.选择(“主体”) .append('form') .attr(“类别”、“评级”); //附加上下投票单选按钮 var radio_groups=评级_表格.append('div').attr('class','form group'); //向上广播 var无线电组=无线电组 .append('div')) .attr('class','form check form check inline upvote'); 电

我使用d3构建了一个带有单选按钮的表单,如下所示:

var评级形式=d3.选择(“主体”)
.append('form')
.attr(“类别”、“评级”);
//附加上下投票单选按钮
var radio_groups=评级_表格.append('div').attr('class','form group');
//向上广播
var无线电组=无线电组
.append('div'))
.attr('class','form check form check inline upvote');
电台
.append('输入')
.attr('class','form check input')
.attr('type','radio')
.attr('name','voting radio')
.attr('value','thumbup')
.attr(“必需的”);
radio_grp_chk.append('span').text('upvote');
//向下广播
var radio_grp_chk2=无线电组
.append('div'))
.attr('class','form check form check inline downvote');
无线电通信组chk2
.append('输入')
.attr('class','form check input')
.attr('type','radio')
.attr('name','voting radio')
.attr('value','thumbdown')
.attr(“必需的”);
radio_grp_chk2.append('span').text('downvote');
//附加文本区域
评级表
.append('div'))
.attr('class','formgroup')
.append('textarea')
.attr('class','form control feedback text')
.attr('占位符','输入文本…');
//提交按钮
评级表
.append('按钮')
.attr('类型','按钮')
.attr('class','btn btn主要评级btn')
.text('Submit!')

问题不在于你的
.attr(“必需的”)
,问题在于你应该是
“提交”
,而不是
“按钮”

由于
“submit”
是默认类型,因此您也可以删除方法
.attr('type','button')

以下是更改后的代码:
var评级形式=d3.选择(“主体”)
.append('form')
.attr(“类别”、“评级”);
//附加上下投票单选按钮
var radio_groups=评级_表格.append('div').attr('class','form group');
//向上广播
var无线电组=无线电组
.append('div'))
.attr('class','form check form check inline upvote');
电台
.append('输入')
.attr('class','form check input')
.attr('type','radio')
.attr('name','voting radio')
.attr('value','thumbup')
.attr(“必需的”);
radio_grp_chk.append('span').text('upvote');
//向下广播
var radio_grp_chk2=无线电组
.append('div'))
.attr('class','form check form check inline downvote');
无线电通信组chk2
.append('输入')
.attr('class','form check input')
.attr('type','radio')
.attr('name','voting radio')
.attr('value','thumbdown')
.attr(“必需的”);
radio_grp_chk2.append('span').text('downvote');
//附加文本区域
评级表
.append('div'))
.attr('class','formgroup')
.append('textarea')
.attr('class','form control feedback text')
.attr('占位符','输入文本…');
//提交按钮
评级表
.append('按钮')
.attr('type','submit')
.attr('class','btn btn主要评级btn')
.text('Submit!')


谢谢,它很有效。但是,我不希望单击按钮后页面刷新。onclick监听器将进行一些ajax调用来发送表单数据。有没有办法仍然保留
type=button
并验证表单?好吧,这是一个不同的问题(即使与您的问题相关),因此我建议您发布一个新问题。@hydradon顺便说一句,当您发布新问题时,不要使用
d3
标记(因为您看到的问题与d3无关),只要使用
javascript
jquery
html
,你就会吸引更多的注意力。当然,我会先研究一些
rating_form
    .append('button')
    .attr('type', 'submit')
    //etc...