1

这种形式有困难。

我在 html 中使用#message div 标签。

我可以让名字和姓氏出现,但如果我忘记输入名字,我无法获得“请输入你的名字和姓氏以出现”。我尝试了各种方法,但没有运气。有人知道我错过了什么吗?

var getName = function()
{ 
var fullName;
if(document.getElementById("FirstName").value == "" &&    document.getElementById("LastName").value == "")
{
    //fullName = "Please enter your first and last name";
     $("#message").empty().append(fullName = "Please enter your first and last    name");
}
else
{

    $("#message").empty().append (fullName  =  document.getElementById("FirstName").value + " " + document.getElementById("LastName").value); 
}
return  $("#message").empty().append(fullName);
}
  var displayName = function()
  {

$(document).ready(function() {

    $("#message").empty().append(Hello);
});
  }

这是html

<div id="message"></div>

<form name="form" id="form" method="post" action="">  

<p class="FirstName">  
    <label for="FirstName">First Name:</label>
  </p>
    <p>
    <input name="FirstName" type="text" id="FirstName" />  

</p>  

<p class="LastName">  
    <label for="LastName">Last Name:</label></p>
    <p>
    <input name="LastName" type="text" id="LastName" />  

</p>


<p class="submit">  
    <input name="submitButton" type="button" id="submitButton" value="Get Name" onClick="getName()" />
</p>  
</form> 
4

1 回答 1

0

fullName = ...是一个赋值,它返回undefined,所以你要附加一个undefined值,删除fullName =. 此外,您应该为字符串使用引号,更改Hello"Hello"并建议不要将 Vanilla JavaScript 与 jQuery 混合使用。

$(document).ready(function() {
   $("#message").text('Hello *');

   $('form').on('submit', function(event){
      var first = $('#FirstName').val(),
          last = $('#LastName').val();
      if (first === '' || last === '') {
         event.preventDefault();
         $("#message").html("Please enter your bloody first and last name");
      }
   });
});

使用onClick不是一个好习惯,特别是当你使用 jQuery 时,你可以submit使用 jQuery 方法来监听事件on,还要注意append返回一个 jQuery 对象并且一个对象在 JavaScript 中是一个真值,所以return $("#message").empty().append(fullName); === return true;.

于 2013-04-15T02:24:55.770 回答