2017-02-21 62 views
-1

我在逻辑上遇到了一些麻烦。我正在使用Ajax发布我的表单,我试图以正确的方式发送一些值。从输入发送值

这是我的表格。

<form method="post" action="~/AJAXcalls/callajaxagain.cshtml" name="form"> 
    <div class="reportDateDiv"> 

     <input type="text" name="inputDate" spellcheck="false" class="datepicker metricDateTextbox capitalFirst" 
         onchange="mySubmit(this.form)" value="@inputDate" autocomplete="off" placeholder="@placeholderStartDate.ToString("MMM d, yyyy")" readonly="readonly" /> 

     <input type="text" name="endDate" spellcheck="false" class="datepicker metricDateTextbox capitalFirst" 
         onchange="mySubmit(this.form)" value="@endDate" autocomplete="off" placeholder="@noEndDate.ToString("MMM d, yyyy")" readonly="readonly" /> 

     <select name="NormOrAvg" class="dwmViewSelect" onchange="mySubmit(this.form)"> 
      <option [email protected](Request.Form["NormOrAvg"] == "1") value="1">Rep Per Set</option> 
      <option [email protected](Request.Form["NormOrAvg"] == "2") value="2">Average Rep Per Set</option> 
     </select> 

     <input onclick="mySubmit(this.form)" class="testthis" type="text" spellcheck="false" autocomplete="off" name="lift" value="Squat" readonly="readonly" /> 
     <input onclick="mySubmit(this.form)" class="testthis" type="text" spellcheck="false" autocomplete="off" name="lift" value="Benchpress" readonly="readonly" /> 
     <input onclick="mySubmit(this.form)" class="testthis" type="text" spellcheck="false" autocomplete="off" name="lift" value="Deadlift" readonly="readonly" /> 
    </div> 
</form> 

所以我想实现的是,在我的表格的最后三个输入被设计成“按钮”,这可能是怪异,但就像我说的,遇到问题的一个好办法搞清楚了这一点IM无论如何,这三者的价值是Squat,Benchpress和Deadlift,我真的只想发送被点击的人的价值,因为在由ajax调用的页面上会显示一些图表,并且取决于我点击的内容我希望它显示匹配的图表。

现在发生的情况是,如果我在上的ajax页面上,结果将是“蹲,benchpress,deadlift”,所以它发送所有值,我只想发送一个我点击,我知道它给我都因为他们都有相同的name="",但我不知道如何解决这个问题?

使用剃刀(cshtml),而不是一个MVC项目。

+0

显示您的Ajax代码。 –

回答

0

的样子,我这样做:

  1. 这些变化给按钮,像这样:

<button id="squats"></button> [...]

  • 如果already've做到这一点,请执行以下操作:(将一些ID添加到您的表单中)
  • document.getElementById('my-form').addEventListener('click', function (event) {

    var target = event.target; var optionChoosen

    if (target.tagName == 'BUTTON') {

    optionChoosen = target.id;

    }