我只想在data引數有值時才添加引數,如果沒有則不要在引數字串中添加資料。
目前,它正在拋出意外的令牌if和資料值顯示undefined
function Data() {
if ($("#data").val().length != 0) {
"&data=" $("#data").val();
}
}
function check() {
launch = & firstname = " $("#
first ").val() " & data = " Data();
}
以這種方式添加引數
"&data=" Data();
uj5u.com熱心網友回復:
如果沒有資料值,則需要回傳一個空字串。
您需要修復check(). 它不需要&data=,因為它是由Data().
您應該呼叫encodeURIComponent()以確保值已正確編碼。
如果您使用$.ajax(),則可以通過將引數放在物件而不是字串中來避免所有這些情況。然后您可以有條件地將data:屬性添加到物件。
function Data() {
if ($("#data").val()) {
return "&data=" encodeURIComponent($("#data").val());
} else {
return "";
}
}
function check() {
launch = "&firstname=" encodeURIComponent($("#first ").val()) Data();
}
uj5u.com熱心網友回復:
?? - 看起來你正在嘗試構建一個 URL 編碼的字串。
我強烈建議建立一個引數物件并通過URLSearchParams()或 jQuery 的$.param()傳遞它。這樣它將被正確編碼
const params = {
firstname: $("#first").val(),
};
const data = $("#data").val();
if (data) {
params.data = data;
}
const launch = (new URLSearchParams(params)).toString();
// or = $.param(params)
console.log("launch:", launch)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input readonly id="first" value="Boaty McBoatFace">
<input readonly id="data" value="" placeholder="data">
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/534760.html
標籤:查询
