2016-09-26 121 views
1

这可能有点难以解释,但我显示的是2 x 2的网格。当您单击单元格文本(比如0,1)时,它会带来弹出一个框并将这些坐标存储为隐藏值。那些隐藏的值将通过POST提交给表单。从表格中获取数据HTML

这是我写的,希望能够澄清什么,我试图做一些示例代码:https://jsfiddle.net/v08bzm9k/1/

<table border=1> 
<tr> 
    <td class='grid-cells'><a href='#myPopup' data-rel='popup'>1</a></td> 
    <td class='grid-cells'><a href='#myPopup' data-rel='popup'>2</a></td> 
</tr> 
<tr> 
    <td class='grid-cells'><a href='#myPopup' data-rel='popup'>3</a></td> 
    <td class='grid-cells'><a href='#myPopup' data-rel='popup'>4</a></td> 
</tr> 
</table> 

<div data-role="popup" id="myPopup" class="ui-content" style="min-width:250px;"> 
     <form method="post" action="save-square.php"> 
     <div> 
      <h3>Pick This Square:</h3> 
      <label for="name" class="ui-hidden-accessible">Name:</label> 
      <input type="text" name="name" id="name" placeholder="Name"> 
      <label for="email" class="ui-hidden-accessible">Email:</label> 
      <input type="text" name="email" id="email" placeholder="Email"> 
      <input type="submit" data-inline="true" value="Submit"> 
      <div id='row'></div> 
      <div id='col'></div> 
     </div> 
     </form> 
    </div> 

请问我存储单元格的我点击进入通过JavaScript的隐藏字段的值是多少?

+0

听起来很合理,如果这是你需要什么在后端跟踪 – charlietfl

回答

1

我更新https://jsfiddle.net/v08bzm9k/2/

是的,你可以使用隐藏域。在您的形式补充一点:

<input type="hidden" name="coords" id="coords" value=""> 

加入这个JS给你的页面:

function setCoords(newCoords) { 
    $('#coords').val(newCoords); 
} 

而在你的链接,添加一个onClick:

<a href='#myPopup' data-rel='popup' onclick="setCoords('1,1');">1</a> 
+0

我试图做出这些调整,但它没有为'newCoords'设置'hidden'值。我在JS中放置了一个'alert',以确保它正在运行,但它实际上并没有正确改变'hidden'输入的值。 – Webtron

+0

如果您正在查看源代码中的值属性,它将显示加载页面时设置的任何值(可能不是)。但是,如果您发布表单,则应该发现save-square.php脚本接收到$ _POST ['coords']'中的坐标。另外,在控制台中,你可以做一些类似于'jQuery('[name = coords]')。val()'来查看它们已经被更新了。 –

+0

实际上 - 更仔细地看输入需要一个id - 改变你的输入形式为'' - 然后setCoords函数将访问它并正确更新值 –