2012-07-05 31 views
1

我需要幫助將值附加到文本框中。會發生什麼是通過下面的相關代碼片段,用戶可以從表格行中的「選項類型」添加到文本框中。例如,如果用戶點擊「添加」按鈕,並在該行內的選項類型是「A-D」,則它在文本框中添加「A-D」。但我不希望它在文本框中添加「A-D」。我希望它添加一個帶有文本框的數字,除了「True or False」和「Yes or No」選項外,它們可以按照原樣插入。每個選項類型的數字如下:如何插入數字而不是選項類型到文本框

Option Type    Number 

A-C      3 
A-D      4 
A-E      5 
A-F      6 

... 

A-Z      26 
True or False   True or False 
Yes or No    Yes or No 

我的問題是如何能夠將被編號爲所有字母的選項類型(true或false是或否保持不變)插入文本框?

下面是相關的代碼,其中它插入從錶行的選項類型到文本框中:

錶行並添加按鈕:

 echo "<table border='1' id='resulttbl'> 
     <tr> 
     <th class='optiontypeth'>Option Type</th> 
     </tr>"; 
     foreach ($searchResults as $key=>$question) { 
     echo '<td class="optiontypetd">'.htmlspecialchars($searchOption[$key]).'</td>'; 
     echo "<td class='addtd'><button type='button' class='add' onclick=\"parent.addwindow('$searchOption[$key]');\">Add</button></td></tr>"; 
} 
     echo "</table>"; 

下面是選項類型目前插入文本框成:

<input type="text" name="gridValues" class="gridTxt maxRow" id="mainGridTxt" readonly="readonly" /> 

下面是它目前插入的選項類型到以上文本框中的功能:

function addwindow(gridValues) { 

    if(window.console) console.log(); 

    if($(plusbutton_clicked).attr('id')=='mainPlusbutton') { 
     $('#mainGridTxt').val(gridValues); 
     } 

    $.modal.close(); 
    return false; 
} 

回答

1

添加檢查你改變輸入字段的值之前,這樣的:

if(questionText != "True or False" && questionText != "Yes or No") 
{ 
    // caution pseudo-code ahead: 
    var myNumbers = {}; 
    myNumbers["A-C"] = "3"; 
    myNumbers["A-D"] = "4"; 
    // ... 
    myNumbers["A-Z"] = "26"; 
    questionText = myNumbers[questionText]; 
} 

$('#mainGridTxt').val(questionText); 

還有很多其他的方法去轉換questionText到正確的號碼,但我只是顯示您的邏輯可以適應非T/F或-Y/N響應。

+0

這很好,但要初始化myNumbers使用:var myNumbers = {}; – dano 2012-07-05 18:54:31

+0

這將使myNumbers成爲一個對象。 Javascript不支持關聯數組 – dano 2012-07-05 18:55:04

+0

@dano,謝謝。我更新了代碼,將myNumbers初始化爲一個對象而不是數組。據我所知,使用情況仍然有效。 – Quantastical 2012-07-05 19:00:53

相關問題