[英]Having 2 actions occur on button click javascript
我不太了解 javascript,我正在嘗試提取表單的輸入值,構建鏈接以將值傳遞給並在單擊按鈕時將用戶發送到該鏈接。
我不確定如何使這兩個動作發生 onClick。
這是我目前擁有的:
<script>
function myFunction() {
var firstname = document.getElementById("firstname").value;
var lastname = document.getElementById("lastname").value;
var email = document.getElementById("email").value;
var phone = document.getElementById("phone").value;
var link = 'https://app.squarespacescheduling.com/schedule.php\?owner=21917237&appointmentType=20129186&firstName=' + firstname + '&lastName=' + lastname + '&email=' + email + '&phone=' + phone;
}
</script>
這就是我正在嘗試與我的按鈕元素內聯的內容:
<div class="de elBTN elAlign_center elMargin0 ui-droppable de-editable" id="tmp_button-86409" data-de-type="button" data-de-editing="false" data-title="button" data-ce="false" data-trigger="none" data-animate="fade" data-delay="500" style="margin-top: 30px; outline: none; cursor: pointer; display: block;" aria-disabled="false" data-elbuttontype="1">
<a onclick={myFunction(), onclick="location.href=link;"} class="elButton elButtonSize1 elButtonColor1 elButtonRounded elButtonPadding2 elBtnVP_10 elButtonCorner3 elBtnHP_25 elBTN_b_1 elButtonShadowN1 elButtonTxtColor1 elButtonFull" style="color: rgb(255, 255, 255); font-weight: 600; background-color: rgb(1, 116, 199); font-size: 26px;">
<span class="elButtonMain"><i class="fa_prepended fa fa-angle-double-right"></i>Let's Get Started<i class="fa_appended fa fa-angle-double-left"></i></span>
<span class="elButtonSub"></span>
</a>
</div>
我需要將用戶發送到在 var link 中創建的鏈接。 發生這種情況的最佳方法是什么?
謝謝!
將動作組合在一個 function 中可以滿足您的需要。
//function declaration
<script>
function myFunction() {
var baseUrl = 'https://app.squarespacescheduling.com/schedule.php\owner=21917237&appointmentType=20129186'
var data = {
firstname: document.getElementById("firstname").value, //if using ts, can add ? for checking the existence of ```document.getElementById('firstname')?.value
lastname: document.getElementById("lastname").value,
email: document.getElementById("email").value,
phone: document.getElementById("phone").value,
}
//do some checking
var unvalidElem = Object.values(data).filter(eachValue => eachValue !== undefined || eachvalue !== null)
//if all elements valid, then go to the link
if(unvalidElem.length === 0){
location.href = `${baseUrl}&firstName=${firstname}&lastName=${lastname}&email=${email}&phone=${phone}`
}
</script>
//actually invoke
<a onclick={myFunction();"}
在您構建 url 后,將其添加到 function 的底部:
location.href = "yourUrl";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.