我想基于来自两个单选按钮和文本的输入使JS输出全名。我有一个问题,因为我希望它输出该人的选择,但无论何时单击男性或女性,它总是显示为男性(加上文本)。我此刻的输出得到的代码是:Javascript名称生成器
window.onload = initAll;
function initAll() {
document.getElementById("sillySubmit").onclick = function() {
document.getElementById("msgField").innerHTML = getSillyName();
return false;
}
}
function getSillyName() {
var x = $('input[id]').click(function() {
($('input[id]:checked').val());
});
var lastName1 = ["lots of names"];
var lastName2 = ["lots more names" ];
var lastNm = document.getElementById("lName").value.toUpperCase();
var validName = true;
if (lastNm == "") {
validName = false;
}
else {
var lastNum1 = lastNm.charCodeAt(0) - 65;
var lastNum2 = lastNm.charCodeAt((lastNm.length-1)) - 65;
if (lastNum1 < 0 || lastNum1 > 25 || lastNum2 < 0 || lastNum2 > 25) {
validName = false;
}
}
if (!validName) {
document.getElementById("lName").focus();
document.getElementById("lName").select();
return "I say. Something gone a bit squiffy here. Try again...";
}
return "Your name is " + x + ' ' + lastName1[lastNum1] + ' '
+ lastName2[lastNum2]; //add in comparisons later on
}
其中“x”代表着男性和“y”是女性。我可以添加/更改哪些内容以显示正确的偏好?
发布一些更多的代码 – 2014-09-12 12:37:35
请分享整个函数代码片段,以便我们得到一个更好的主意。 – BaN3 2014-09-12 12:37:48
你期望'||'做什么?它不起作用。 – Bergi 2014-09-12 12:39:26