簡體   English   中英

無法在onClick上執行JavaScript

[英]JavaScript not being executed onClick

我有一個網頁,正在使用JavaScript和onClick處理HTML表單,但是未執行JavaScript代碼。

這是我的表格:

<form action="" method="post" id="reportform">
    <input type="radio" name="report" value="customer"><p>Customers</p>
    <input type="radio" name="report" value="item"><p>Items Sold</p>
    <input type="radio" name="report" value="department"><p>Sales Departments</p>
    <input type="radio" name="report" value="person"><p>Sales People</p>
    <input type="button" name="reportsubmit" value="Submit" onClick="checkReport(this.form)">
</form>

這是JavaScript代碼(通過這種方式,JavaScript和表單都位於body標簽中):

function checkReport (form) 
{
    var checked = form.querySelector('input:checked');
    var value = checked ? checked.value : null;

    if (value == "customer") 
    {
        var href = "http://bdpastudents.com/~a7068104/2013-2014/Lab_13/Reports/Reports.php";
        var idx = href.indexOf("Reports", 0);
        var new_href = href.slice(0,idx+19) + "#customer" + href.slice(idx+19);

        window.location.replace(new_href);
    } 
    else if (value == "item") 
    {
        var href = "http://bdpastudents.com/~a7068104/2013-2014/Lab_13/Reports/Reports.php";
        var idx = href.indexOf("Reports", 0);
        var new_href = href.slice(0,idx+19) + "#item" + href.slice(idx+19);

        window.location.replace(new_href);
    } 
    else if (value == "department") 
    {
        var href = "http://bdpastudents.com/~a7068104/2013-2014/Lab_13/Reports/Reports.php";
        var idx = href.indexOf("Reports", 0);
        var new_href = href.slice(0,idx+19) + "#department" + href.slice(idx+19);

        window.location.replace(new_href);
    } 
    else if (value == "person") 
    {
        var href = "http://bdpastudents.com/~a7068104/2013-2014/Lab_13/Reports/Reports.php";
        var idx = href.indexOf("Reports", 0);
        var new_href = href.slice(0,idx+19) + "#person" + href.slice(idx+19);

        window.location.replace(new_href);
    }
}

function checkCustomer(form) 
{
    var checked = form.querySelector('input:checked');
    var value = checked ? checked.value : null;

    if (value == "all") 
    {
        var href = "http://bdpastudents.com/~a7068104/2013-2014/Lab_13/Reports/Reports.php";
        var idx = href.indexOf("Reports", 0);
        var new_href = href.slice(0,idx+19) + "#allcustomers" + href.slice(idx+19);

        window.location.replace(new_href);
    } 
    else if (value == "one") 
    {
        var href = "http://bdpastudents.com/~a7068104/2013-2014/Lab_13/Reports/Reports.php";
        var idx = href.indexOf("Reports", 0);
        var new_href = href.slice(0,idx+19) + "#onecustomer" + href.slice(idx+19);

        window.location.replace(new_href);
    }
}   

您的HTML是非法的。 您尚未關閉輸入標簽。 誰知道,您不必關閉標簽。 對於那個很抱歉。

您能在這個小提琴上復制您的問題嗎? 還是對您有用?

var form = document.getElementById('reportForm');

http://jsfiddle.net/mgDGN/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM