提交表单到值ID

时间:2011-01-19 03:28:09

标签: jquery

我将此表单发送到facebox但是字段名称的值没有通过。如何在动作网址中提交带有值的表单? (我确信有一种更简单的方法)。

<form action="javascript: jQuery.facebox({ajax:'livescore/quickhistory.php'});"     id="search-form" method="post">
<div class="wrapper">
<input type="text" id="name" value="Gamer Look Up" onBlur="if(this.value=='')     this.value='Gamer Look Up'" onFocus="if(this.value =='Gamer Look Up' ) this.value=''"  />
<a href="#" onClick="document.getElementById('search-form').submit()">Submit</a> </div>
</form>

1 个答案:

答案 0 :(得分:0)

我不完全确定你的表单和facebox之间发生了什么,但对于初学者,你应该尝试将所有行为代码移出内联事件处理程序:

$(document).ready( function(){

  $('#search-form').submit( function(e){
    e.preventDefault(); // suppress default form handler
    $.facebox({...}); // add your code to presumably handle submission
  });

  $('#name') // a confusing ID, especially since you should add a "name" attr
    .focus( function(){ if( this.value == 'Look up' ) this.value = ''; } )
    .blur( function(){ if( this.value == '' ) this.value = 'Look up'; } );

  $('a#your-link-id').click( function(e){
    e.preventDefault(); // suppress default link behavior
    $('#search-form').submit();
  });

});

然后您的HTML可以简化为:

<form action="/some_reasonable_default" id="search-form" method="post">
  <div class="wrapper">
    <input type="text" id="name" value="Look Up" name="some-name" />
    <a href="#" id="your-link-id">Submit</a> 
  </div>
</form>

请注意,您应在name字段中添加<input>。如果您希望能够使用页面的自然行为(没有覆盖的JavaScript代码)提交表单,namevalue是您的处理程序脚本将接收的内容。您还应该在提交链接中添加ID,如上例所示,以便更容易明确地选择。