⑴ 求助js購物車代碼!要能點擊 添加按鈕 就直接在購物車顯示出來!可以修改數量!
<script language='javascript'>
function checkSum()
{
var sum = 0;
for(var i=0;i<document.form1.elements["writer"].length;i++)
{
if(document.form1.elements["writer"][i].checked)
{
sum = sum +parseInt(document.form1.elements["writer"][i].value);
}
}
totalprice.innerText = sum +" 元";
}
</script>
<form method=post name=form1>
<input type="checkbox" name=writer value="34" onclick="checkSum()">韓國耳飾tm56(34元)<br>
<input type="checkbox" name=writer value="46" onclick="checkSum()">純銀吊墜tc34(46元)<br>
<input type="checkbox" name=writer value="30" onclick="checkSum()">黃鶯手鐲(30元)<br>
<input type="checkbox" name=writer value="40" onclick="checkSum()">翡翠玉鐲1346(40元)<br>
<input type="checkbox" name=writer value="50" onclick="checkSum()">天涯耳飾1233(50元)<br>
<br>
總價為:<span id="totalprice">0 元</span>
</form>
⑵ 如何用html css javascript php製作購物車
一兩句說不清楚………
用html css做出商品樣子和購物車樣子,
然後用javascript來對買這個動作做處理,把商品的信息存起來,通過js把商品信息傳遞給購物車,讓購物車能夠顯示;
另一方面把信息交給php,寫入資料庫。
我這么說你明白了么……
⑶ 關於javaScript問題 購物車的實現
關於只有最後一個文本框能觸發checknum方法的問題:
其實這里有個邏輯錯誤,主要是<%=i%>中的i是多少的問題。從你貼出來的代碼看,你是不是連JS代碼也循環輸出了吧,也就是有幾條購物信息,就會生成幾個checknum方法,在JS里,同函數名的方法如果多次定義,則只有最後一個定義的方法有效果,那最後一個checknum方法里的<%=i%>實際就只指代最後一個文本框了。結果就是只有最後一個文本框有效果。
其實樓主只需要循環輸出表格,JS代碼只用一個就行了,只要在文本框觸發JS動作時,把<%i%>作為參數傳進JS方法就行了,例如,你可以這么寫:
...
<td width="58" height="30"><input name="num<%=i%>" size="5" type="text" value="<%=goodsitem.number%>" onBlur="checknum(this.form,<%=i%>)"></td>
...
把JS方法放到循環外面,這么寫:
function checknum(myform,i){
var inp = myform['num'+i];
if(isNaN(inp.value) || inp.value.indexOf('.')!=-1){
alert("請不要輸入非法字元!");inp.focus();return;}//判斷是否為數字值
if(inp.value><%=leave%>){alert("請輸入小於現有庫存 ("+<%=leave%>+") 的數量!");inp.focus();return;}
if(inp.value==0){
alert("請輸入大於1的整數!");inp.focus();return;}
if(inp.value==""){
alert("請輸入修改的數量!");inp.focus();return;}
myform.submit();
}
關於數字修改後觸發checknum方法的問題:
樓主的checknum方法最後是要提交表單的,所以如果用鍵盤事件,那每一次輸入一個字元或刪除一個字元,都會觸發表單提交動作,這應該不是樓主要的結果。字元修改後觸發JS方法有專門的事件處理方法onchange。樓主可以吧onblur換成onchange試試。