根据检查的按钮设置一个单选按钮,运行不同的计算?

时间:2016-04-01 20:50:31

标签: javascript html

我需要您的帮助HTML和JavaScript如何设置单选按钮,具体取决于选中哪个按钮运行不同的计算?

如果选中是 - 5天 - 则运行5天计算。 如果选中No-30天 - 则关闭Yes按钮并运行30天计算。

更新:

  • 首先 - 抱歉将代码放在评论部分。我还在学习一切。

  • 第二 - 我只用了大约3周的JavaScript和大约4周的HTML。我正在学习Lynda.com的课程 - HTML / Javascript / CSS。这些课程很好但是它们教授基本和结构,但不是所有标签和属性的深入。除了Lynda.com,我正在从其他网站学习,唯一的问题是我正在尝试学习标签的含义,这在某些情况下并不明确。 感谢Sebsemillia对codeschool.com的建议我也会检查这个网站。

我的奋斗和挑战是我正在为工作做这个项目(创建eForm),而我正在学习它。这并不容易。

  • 第三 - 好的 - 这就是我的地方 - 谢谢你安东尼 - 现在30天的计算工作但不是5天的计算。这是我的https://jsfiddle.net/IS2016/751Lx395/1/ [1] - Anthony / Sebsemillia,你可以看到我从你们两个人那里学到了jsfiddle。现在我可以使用这个网站,以更好的格式显示代码。

不确定我错过了什么。

谢谢

IreneS

  [1] https://jsfiddle.net/IS2016/751Lx395/1/

更新2:

请有人让我知道我错过了什么 - 30天计算有效,但5天计算,不起作用。尽管如此,两种计算都是相同的设置。

非常感谢您的帮助。

谢谢

艾琳

更新3:

仅供参考 - 我想出来了,只是想让任何人知道这个问题并想知道。因为5天和30天的计算是在一个单独的文件中,所以它不适合我。一旦我将所有代码放在一个文件中,它就会工作,是的!现在我需要弄清楚如何将它们保存在单独的文件中并将函数changeHandler(event)指向这些文件。我会搞清楚,同时我会把它们留在一个文件中。

我以为有些人想知道。

感谢Anthony和Sebsemillia提供的所有帮助。

艾琳

2 个答案:

答案 0 :(得分:1)

您的主要问题是您的身份@(Html.Kendo().TabStrip() .Name("tabstrip") .Items(items => { items.Add().Text("Tickets") .Selected(true) .Content( @<text>@(Html.Kendo().Grid((IEnumerable<Bugger.Models.Ticket>)ViewBag.Tickets) .Name("grid2") .Columns(columns => { columns.Bound(tickets => tickets.TicketID); columns.Bound(tickets => tickets.Description); }) .Pageable() .Sortable() ) </text> ); items.Add().Text("Technicians") .Content(@<text>@(Html.Kendo().Grid((IEnumerable<Bugger.Models.Technician>) ViewBag.Technicians) .Name("grid1") .Columns(columns => { columns.Bound(technician => technician.UserID); columns.Bound(technician => technician.FirstName); }) .Pageable() .Sortable() )</text>); })) 两次,因此无法作为选择器使用。 ID应始终在单个页面上唯一!

以下是一些jQuery示例,演示如何使其工作:https://jsfiddle.net/r1hb8guu/

但是你的代码存在很多错误,请仔细查看我的更改。

更新:

  • 使用内联JavaScript处理程序被认为是不好的做法,因此我删除了“onclick”内容..
  • 对于同一组的单选按钮,它们不需要相同的id但具有相同的“名称”属性

  • 我把您发布的代码作为评论,并使其成为一个新的小提琴:https://jsfiddle.net/gfznebfm/请仔细看看。除了像'changeEventHanler'之类的拼写错误之外,还有很多错误。我不知道从哪里开始为你解释事情,你有很多东西需要学习,没有人可以教你这么做。我建议您开始正确学习HTML,CSS,jQuery / JavaScript(按此顺序)。那里有很多好的资源。我可以为此推荐https://www.codeschool.com/,他们也有免费的初级课程,涵盖上述主题的基础知识。

  • 下次遇到代码问题时,请创建一个有效的jsFiddle(https://jsfiddle.net/)。如何使用它是自我解释的。如果您想发布新代码,只需编辑/更新您的问题,不要在评论中写下。

答案 1 :(得分:0)

在接受的答案here中,他有一个javascript解决方案。使用querySelectorAll选择单选按钮。详细了解here。从单选按钮中删除USPublicHealth30Days()功能和onclick事件。然后实现他拥有的changeHandler()函数。此外,使用change事件与他一样。 Click here了解有关变更事件的更多信息。 Click here了解有关forEach()方法的更多信息。 Click here了解有关addEventListener

的更多信息

更新

querySelectorAll中有一个拼写错误。它应该是rbPubHealthYesNo而不是rbPublicHealth。您还应该从html中删除onchange个事件,不需要它们。我还从您的document.getElementById('calc14').style.display = 'block';声明中删除了document.getElementById('calc15').innerHTML = ''";if else。在date30Days14()函数中,我将document.getElementById('calc15').innerHTML = text + dueDate;更改为document.getElementById('dt30Days14').value = text + dueDate;并添加了document.getElementById('dt5Days').value = "";我在date5Days()函数中做了基本相同的事情。我还从style="display:none"删除了<div id="USAPubHealthYesNo">

这是jsfiddle