2014-01-29 38 views
-1

我已将下面的代码添加到我的程序中。Var和使用Jquery的输入变量

var text = $(this).text(); 
$("input").val(text); 

虽然不是填补空白input的窗体上它改变了我的submit按钮。我怎样才能得到这个来填写我的input type=text的文本,而不是覆盖我的input type=submit

我的程序代码如下。

<!DOCTYPE html> 
<html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
    <title>Untitled Document</title> 

    <cfquery datasource="AccessTest" name="qTest"> 
     SELECT P.Account, P.Image, P.Image_ID, C.Remarks, C.Users, C.Accounts, C.Date_Time 
     FROM PictureDB AS P 
     INNER JOIN CommentsDB AS C 
     ON C.Image_ID = P.Image_ID 
     ORDER BY P.Image_ID 
    </cfquery> 

    <script src="http://code.jquery.com/jquery-2.0.3.js"></script> 
    <script> 
     $(document).ready(function(){ 
      var images = { 
       <cfoutput query="qTest" group="Image_ID"> 
        "#qTest.Image_ID#": { 
         "image": "#qTest.Image#", 
         "remarks": [ 
          <cfoutput> 
           "#qTest.Users#, #qTest.Date_Time# <br> #qTest.Remarks# <br> </br>", 
          </cfoutput> 
         ] 
        }, 
       </cfoutput> 
      }; 
      $("button").click(function(event) { 
       event.preventDefault(); 
       var id = $(this).data("id"); 
       var src = images[id].image; 
       var desc = images[id].remarks.toString(); 
       var text = $(this).text(); 
       $("input").val(text); 
       $("#theImage").attr("src", src).removeClass("hide"); 
       $("#theDescription").html(desc).removeClass("hide"); 
      }); 
     }); 
    </script> 
    </head> 
    <body> 
    <cfoutput query="qTest" group="Account"> 
     <button data-id="#qTest.Image_ID#">#qTest.Account#</button> 
    </cfoutput> 
    <cfform name="InsertComments" id="InsertComments"> 
     <fieldset> 
     <div id="container"> 
      <div id="mainContent"> 
      <textarea name="Remarks" cols="55" rows="4" label="Tour Description" 
       enabled="no" required="yes" validateat="OnSubmit" 
       message="Please enter your comment here"> 
      </textarea> 
      <input type="text" name="Image_ID" message="Please enter Account Here." 
       validateat="onSubmit" required="yes" id="Image_ID" size="10" 
       maxlength="60"> 
      </input> 
      <input type="submit" name="insertComments" value="Insert Comments" 
       id="submit"> 
      </input> 
      </div> 
     </div> 
     </fieldset> 
    </cfform> 
    <cfif IsDefined("form.InsertComments")> 
     <cfquery datasource="AccessTest"> 
     INSERT INTO CommentsDB (Remarks, Image_ID, Date_Time) 
     VALUES (
      <cfqueryparam value="#form.Remarks#" cfsqltype="CF_SQL_LONGVARCHAR"> 
      , <cfqueryparam value="#form.Image_ID#" cfsqltype="cf_sql_integer"> 
      , <cfqueryparam value="#now()#" cfsqltype="cf_sql_timestamp"> 
     ) 
     </cfquery> 
    </cfif> 

    <img id="theImage" class="hide" /> 
     <div id="theDescription" class="hide"></div> 
    </body> 
</html> 
+3

使用属性选择'$( “输入[类型=文本]”).VAL(文字);' –

回答

2

试试这个。

$('input[type="text"]').val(text); 

或者既然您有ID,您可以使用您的输入文本框的ID。

$("#Image_ID").val(text); 
+0

有没有办法让“Image_ID”关联,每个按钮填充空白而不是单词“text “虽然? –

+1

我没有收到你。你问过如何让#Image_ID框填充为空? – Navin

+0

我注意到,如果我把引号(文本),它将与空白文字....如果我没有引号周围的文字似乎没有发生似乎 –

3

我认为你可以使用的,而不是$("#Image_ID").val(text);$("input").val(text);

1

您可以使用属性选择jQuery("[attribute='value']")

属性:属性名称。

:属性值。可以是不加引号的单个单词或带引号的字符串。

$("input[type='text']").val(text); 

http://api.jquery.com/attribute-equals-selector/

既然你有id你可以用它来选择文本字段,它是更好的方式

$("#Image_ID").val(text); 
+0

但是都没有成功,虽然我没有得到$( “输入:文本”)VAL( “文本”)。 ;上班。我想知道这是为什么。 –

+0

其实他们都工作,但文本需要在“” –

+0

一样#Image_ID –