Я беру старую игрушку VB.NET, которую сделал в 2006 году, и пытаюсь преобразовать ее в HTML / JavaScript / CSS3, чтобы ее функциональные возможности можно было встроить на страницу в Tumblr. Однако мне удалось преобразовать элемент на 99% из формы VB.NET в форму JavaScript. Проблема в том, что товар не кодируется.
Ниже приведен HTML-код моего веб-порта:
<table id="jewelryjiddyapp"><tr>
<td colspan="2"><div id="logofield"><p id="JiddyMainLogo">Jewelry Jiddy's</p>
<p id="JiddySubLogo">Wedding Ring Store</p></div></td>
<td>
<div class="fieldlabel" style="margin-top:25px;">Model Name</div>
<form>
<select id="modelBox">
<option id="heartsinlavaflow">Hearts in Lavaflow</option>
<option id="scarofafrica">Scar of Africa</option>
<option id="monkeysuncle">Monkey's Uncle</option>
<option id="flatteringfool">Flattering Fool</option>
<option id="stealdeal">Steal Deal</option>
<option id="arweethearyet">Arwee Thearyet</option>
<option id="checkbouncer">Checkbouncer</option>
<option id="worthyoursoul">Worth-Your-Soul</option>
<option id="therough">The Rough</option>
<option id="canyudrspecial">Canyu Dr. Special</option>
<option id="viderzhen">Viderzhen</option>
<option id="fiberglasschicken">Fiberglass Chicken</option>
<option id="pinkpuma">Pink Puma</option>
</select>
</form>
<p class="limitnotice">Limit 1 Model Type per Sale</p>
</td>
</tr><tr>
<td>
<div class="fieldlabel">Number of Items</div>
<form id="noifield">
<input id="NOI-1" name="noi" type="radio" />1
<input id="NOI-2" name="noi" type="radio" />2
<input id="NOI-3" name="noi" type="radio" />3
<input id="NOI-4" name="noi" type="radio" />4
<input id="NOI-5" name="noi" type="radio" />5
</form>
<p class="limitnotice">Limit 5 per Sale</p>
</td>
<td>
<div class="fieldlabel">Sales Code</div>
<form>
<select id="saleBox">
<option id="normalsale">Normal</option>
<option id="the25off">25% Off Sale</option>
<option id="the40off">40% Off Sale</option>
<option id="the15off">15% Senior Discount</option>
</select>
</form>
<form style="text-align:center;">
<input class="fieldlabel" id="findSalesTotal" type="button" value="Find Sales Total"
onclick="findSalesTotal(); return true;" />
</form>
</td>
<td>
<div class="fieldlabel">Total Amount Due</div>
<p id="finalSalesTotal"></p>
</td>
</tr></table>
Вот код JavaScript:
<script language="javascript" type="text/javascript">
function findSalesTotal() {
var itemValue;
var NOI;
var itemTotal;
var SalesCode;
var DueSansTax;
var SalesTax = 1.06;
var TAD;
if (document.getElementById('heartsinlavaflow').selected = true)
{itemValue = 190;}
else if (document.getElementById('scarofafrica').selected = true)
{itemValue = 220;}
else if (document.getElementById('monkeysuncle').selected = true)
{itemValue = 321.15;}
else if (document.getElementById('flatteringfool').selected = true)
{itemValue = 118.65;}
else if (document.getElementById('stealdeal').selected = true)
{itemValue = 5.75;}
else if (document.getElementById('arweethearyet').selected = true)
{itemValue = 88.73;}
else if (document.getElementById('checkbouncer').selected = true)
{itemValue = 532.9;}
else if (document.getElementById('worthyoursoul').selected = true)
{itemValue = 6685.19;}
else if (document.getElementById('therough').selected = true)
{itemValue = 12.18;}
else if (document.getElementById('canyudrspecial').selected = true)
{itemValue = 86.14;}
else if (document.getElementById('viderzhen').selected = true)
{itemValue = 121.15;}
else if (document.getElementById('fiberglasschicken').selected = true)
{itemValue = 132.17;}
else if (document.getElementById('pinkpuma').selected = true)
{itemValue = 93;}
else
{itemValue = 0;
alert("Select a valid model, Model Select Error");}
if (document.getElementById('NOI-1').checked = true)
{NOI = 1;}
else if (document.getElementById('NOI-2').checked = true)
{NOI = 2;}
else if (document.getElementById('NOI-3').checked = true)
{NOI = 3;}
else if (document.getElementById('NOI-4').checked = true)
{NOI = 4;}
else if (document.getElementById('NOI-5').checked = true)
{NOI = 5;}
else
{NOI = 0; alert("Select a number of items. Number of Items Error");}
if (document.getElementById('normalsale').selected = true)
{SalesCode = 1;}
else if (document.getElementById('the25off').selected = true)
{SalesCode = 0.75;}
else if (document.getElementById('the40off').selected = true)
{SalesCode = 0.6;}
else if (document.getElementById('the15off').selected = true)
{SalesCode = 0.85;}
else
{SalesCode = 0; alert("Invalid Entry, Sales Code Error");}
itemTotal = itemValue * NOI;
DueSansTax = itemTotal * SalesCode;
TAD = DueSansTax * SalesTax
document.getElementById('finalSalesTotal').innerHTML = TAD;}
</script>
Я не специалист по JavaScript, но мне кажется, что сценарий хорошо сформирован. Поэтому я не могу понять, почему он вообще не выполняется. Когда все работает правильно, в поле «Общая сумма к оплате» будет отображаться числовое значение, которое я могу затем проанализировать как деньги, как только узнаю, что получаю результат. Но пока никаких результатов. Есть ли у кого-нибудь предложения перевернуть эту штуку?
Первоначально это было частью задания десять лет назад. Я тогда скомпилировал его на VB.NET, и все работало нормально. Я удалил игровые «чит-коды», которые давали забавные результаты, так как я хочу, чтобы базовый скрипт работал, прежде чем делать его симпатичным.
И нет, я точно не помню, как я это делал в VB.NET. Я не занимался компиляцией программ на таком уровне с 2007 года.
ОБНОВЛЕНИЕ: Спасибо за "окошко". совет. Но теперь возникает новая проблема: он не запоминает выделенные фрагменты. Например: когда я устанавливаю его на «Шрам Африки», он возвращается к «Сердцам в потоке лавы». Когда я устанавливаю радиокнопки на два, они сбрасываются на 1. Когда я выбираю продажу, меня перенаправляют в нормальный режим. Как сохранить выбор данных перед выводом?
PS: Я удалил CSS, поскольку некоторые говорили, что он мешает и в любом случае не является частью проблемы.
onclick="findSalesTotal(); return true;"
наonclick="window.findSalesTotal(); return true;"
. - person Stryner   schedule 15.10.2014