Php 复选框将输入添加到文本框总选择和总选择成本 var itemsAdded=Array(); 函数编号(文本){ var i=itemsAdded.indexOf(文本) 如果(i>=0){ 接头(i,1); }否则{ 项目添加。推送(文本); } document.getElementById(“结果”).value=itemsAdded.join(“”); } $(函数(){ 对于(i=0;i
我认为这可以满足您的所有要求(注意,我也对代码进行了大量清理,我鼓励您查看更多关于jQuery的信息,因为您似乎正在使用JavaScript做一些与jQuery相同的事情)Php 复选框将输入添加到文本框总选择和总选择成本 var itemsAdded=Array(); 函数编号(文本){ var i=itemsAdded.indexOf(文本) 如果(i>=0){ 接头(i,1); }否则{ 项目添加。推送(文本); } document.getElementById(“结果”).value=itemsAdded.join(“”); } $(函数(){ 对于(i=0;i,php,javascript,html,Php,Javascript,Html,我认为这可以满足您的所有要求(注意,我也对代码进行了大量清理,我鼓励您查看更多关于jQuery的信息,因为您似乎正在使用JavaScript做一些与jQuery相同的事情) 每次单击复选框时,它都会运行函数calculateCheckout(),这将查找所有选中的复选框,并计算选定的总数和总价 我将价格存储在一个名为data price的属性中。在我的JSFIDLE中,它只取增量值并乘以2,但在一个工作示例中,它应该是任何数字 现在,该解决方案将使用类产品复选框检查整个正文中的任何输入。只要您
- 每次单击复选框时,它都会运行函数
,这将查找所有选中的复选框,并计算选定的总数和总价calculateCheckout()
- 我将价格存储在一个名为
的属性中。在我的JSFIDLE中,它只取增量值并乘以2,但在一个工作示例中,它应该是任何数字data price
- 现在,该解决方案将使用类
检查整个正文中的任何输入。只要您的复选框可以使用该类,那么该解决方案就可以工作。我添加了一个示例产品,让您了解如何正确使用复选框产品复选框
<script>
var itemsAdded = Array();
function moveNumbers(text) {
var i = itemsAdded.indexOf(text)
if ( i >= 0) {
itemsAdded.splice(i,1);
} else {
itemsAdded.push(text);
}
document.getElementById("result").value=itemsAdded.join(" ");
}
$(function() {
for (i=0;i<10;i++) {
console.log(i);
$("body").append("<input type='checkbox' name='add' value='" + i + "' onclick='moveNumbers(this.value)'/> Checkbox" + i + "<br/>");
}
});
</script>
<textarea id="result" cols="12" rows="6" readonly>
</textarea>
<tr>
<?php
$path = "photos/";
$dir_handle = @opendir($path) or die("Unable to open folder");
echo "<table height='500px'width='800px'align='center'border='1'>";
echo "<tr>";
while (false !== ($file = readdir($dir_handle))) {
if($file == "index.php")
continue;
if($file == ".")
continue;
if($file == "..")
continue;
{
echo ($x % 6 == 0) ? "</tr><tr>" : "";
echo "<td><input type='checkbox' name='add' value='$file' onclick='moveNumbers(this.value)'>
<img src='photos/$file'alt='$file' style='height:auto;width:85%;'alt='$file'>
<br>
$file
</td>";
$x++;
}
}
echo "</tr>";
echo "</table>";
closedir($dir_handle);
?>
var itemsAdded=[];
函数calculateCheckout(){
var checked_box=$(“input.product check:checked”);//查找所有选中的复选框
var项目合计=0;
$(“#x-names”).val(“”;//重置名称列表
选中复选框。每个(函数(){//循环遍历所有复选框
//将名称(取自复选框数据名称属性)添加到名称列表中
$(“#x-names”).val($(“#x-names”).val()+“”+$(this.attr(“数据名”));
items_total+=parseFloat($(this).val());//通过选取复选框值来迭代我们的总价
});
//记录复选框的总长度
$(“#x-length”).val(复选框.length);
美元(“#x总计”).val(项目总计);
}
$(文档).ready(函数(){
//设置一个事件,以便在每次单击具有类的元素时调用CalculateCheck。
//有关更多信息,请参见jQuery“on”函数
$(“正文”)。在(“单击”,“输入.产品检查”,calculateCheckout);
对于(i=1;iuser1829346
这可能需要相当多的清理。你为什么循环10次,我认为这个问题不清楚。好的,干杯,我会尽我所能。选中复选框时,它会将作为图像文件的项目名称添加到文本框中(IMG_1234.jpg)。我想添加的是另一个文本框,显示选中的项目总数(1),然后是另一个文本框,显示选中的所有项目的总成本(10)。每个项目的价值可能为10美元。例如,文本框1=图像名称,文本框2=所选图像总数,文本框3=所选图像的总成本。好的,我会快速制作一些东西-顺便说一句,为什么是文本区域?我正在添加到表单中,然后通过提交按钮提交以电子邮件发送表单。这就像购买照片的订单。其他fields我有包括姓名,电子邮件地址,订单参考ID,现在试图添加多少照片选择等…很好的工作,但我上次的问题是,PHP部分的代码扫描目录的图像,然后添加自己的复选框旁边的图像显示。基本上PHP增加了复选框的飞行。因此没有硬编码复选框。所以我对带有已分配类型ID的复选框有问题,如果这样做有意义的话?您只需要更改选择器,以便它拾取事件。您的复选框在哪里生成,您可以向它们添加一个类吗?
var itemsAdded = [];
function calculateCheckout() {
var checked_boxes = $("input.product-check:checked"); // Find all checked checkboxes
var items_total = 0;
$("#x-names").val(""); // Reset the list of names
checked_boxes.each(function() { // Loop through all of our checkboxes
// Add the name (taken from the checkbox data-name attribute) to the list of names
$("#x-names").val($("#x-names").val() + " " + $(this).attr("data-name"));
items_total += parseFloat($(this).val()); // Iterate our total price by taking the checkbox value
});
// Record the total checkbox length
$("#x-length").val(checked_boxes.length);
$("#x-total").val(items_total);
}
$(document).ready(function() {
// Set an event to call calculateCheckout every time an element with class .check-move is clicked.
// See the jQuery 'on' function for more info
$("body").on("click", "input.product-check", calculateCheckout);
for (i=1;i<5;i++) {
$("#checkboxes").append("<input type='checkbox' class='product-check' value='"+(i * 2 )+"' data-name='"+i+"' /> Checkbox" + i + "<br />");
}
});
<div id="checkboxes"></div>
<h1>Selected Products</h1>
<textarea id="x-names"></textarea>
<h1>Total Selected</h1>
<input id="x-length" />
<h1>Total Price</h1>
<input id="x-total" />
<input type="checkbox" value="745" data-name="samgs4" class="product-check" /> Galaxy S4