第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何以這種形式將 HTML 與 Javascript 分開?

如何以這種形式將 HTML 與 Javascript 分開?

犯罪嫌疑人X 2023-10-10 10:32:25
不,這個話題根本沒有回答我的問題。請在做任何事情之前閱讀問題。我有一個帶有 Javascript 的表單,它按預期工作:<script>  function checkForm(form)  {    if(form.cb1.checked) {window.open('http://google.com/','_blank');    }        if(form.cb2.checked) {window.open('http://yahoo.com/','_blank');    }    return true;  }</script><form onsubmit="return checkForm(this);">    <label for="cb1">G</label>    <input name="cb1" type="checkbox">    <label for="cb2">Y</label>    <input name="cb2" type="checkbox">    <input type="submit" value="Submit"></form>但如果我嘗試將 HTML 與 JS 分開,它就會停止工作。單擊SubmitURL后checkbox.html?cb1=on,如果第一個復選框被選中,則更改為 ;checkbox.html?cb2=on如果第二個復選框被選中,則更改為checkbox.html?cb1=on&cb2=on;如果兩個復選框都被選中,則更改為 。但帶有網(wǎng)址的選項卡無法打開。我的分離嘗試如下:document.getElementById('cbx').addEventListener(    'submit', function checkForm(event) {    if (form.cb1.checked) {        window.open('http://google.com/', '_blank');    }    if (form.cb2.checked) {        window.open('http://yahoo.com/', '_blank');    }    return true;});    <form id="cbx">        <label for="cb1">G</label>    <input name="cb1" type="checkbox">        <label for="cb2">Y</label>    <input name="cb2" type="checkbox">        <input type="submit" value="Submit">    </form><script type="text/javascript" src="form.js"></script>
查看完整描述

1 回答

?
開心每一天1111

TA貢獻1836條經(jīng)驗 獲得超13個贊

用來event.preventDefault()解決問題。return true它本質上與在 HTML 元素屬性(如 )內執(zhí)行的操作相同onsubmit,它可以防止通常發(fā)生的默認行為。如果您希望發(fā)生在新選項卡中打開某些 URL 的自定義行為,則必須首先覆蓋默認行為。


另外,請確保您的表單變量在某處定義,不確定它是否在您的代碼中,因為它不在您的第二個示例中。


document.getElementById('cbx').addEventListener(


    'submit', function checkForm(event) {

    

    //Prevents default action that would normally happen onsubmit

    event.preventDefault();

    

    //Define the form element

    var form = document.getElementById("cbx");


    if (form.cb1.checked) {

        window.open('http://google.com/', '_blank');

    }

    if (form.cb2.checked) {

        window.open('http://yahoo.com/', '_blank');

    }


    return true;


});

<form id="cbx">

    

    <label for="cb1">G</label>

    <input name="cb1" type="checkbox">

    

    <label for="cb2">Y</label>

    <input name="cb2" type="checkbox">

    

    <input type="submit" value="Submit">

    

</form>

該代碼經(jīng)過測試并且可以工作。(由于代碼片段對新選項卡中打開 URL 的反應,它在代碼片段中不起作用,但這里有一個有效的JSFiddle。)



查看完整回答
反對 回復 2023-10-10
  • 1 回答
  • 0 關注
  • 108 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號