2010-06-20 9 views
3

내 응용 프로그램에 대한 사용자 지정 목록을 만들 수있는 권한을 부여하려고합니다. 텍스트 영역 필드에 자신의 선택을 삽입하여 각 줄을 \ n (입력)을 사용하여 하나의 선택으로 처리합니다. 구분 기호, 나는 여러 줄에 하나의 선택을 입력 할 수 있도록해야 하나, 도울 수 있습니까? AA 텍스트 영역에 입력으로 BB CC 다음 I 그들에 세퍼레이터를 입력 분할하도록 처리하고있어, 그래서리스트에서 세 가지 옵션이있다 :html의 텍스트 영역에 대한 새로운 구분 기호

<textarea></textarea> 

사용자 입력 1 단, 2- bb 및 3-cc,하지만 내가 아아를 만들기 위해 필요한 것은 bb가 첫 번째 옵션이고 cc 두 번째 옵션은 새로운 구분 기호가 필요합니다. 더 많은 아이디어가 필요합니까?

+2

나는 이해할 수 없다. 당신이하고 싶은 것을 분명히 할 수 있습니까? –

+0

나는 아직도 네가하고 싶은 것을 이해하지 못한다. 구분 키로 Enter 키를 사용하는 것이 잘못된 이유는 무엇입니까? –

+0

틀린 것은 없지만 사용자가 textarea에서 여러 줄로 옵션을 추가 할 수 있도록 허용해야합니다. – ama

답변

0
이 코드는 옵션을 수

여러 줄에 입력하고 당신이 두 번를 Enter 키를 누릅니다 일단 옵션이 생성됩니다

자바 스크립트를

<script type="text/javascript"> var LastKeyCode=-1; function updateOptions(e) { if (e.keyCode) { var KeyCode=e.keyCode; } else { var KeyCode=e.charCode; } if (KeyCode==13 && LastKeyCode==13) { // Enter? var RowsDataAry=document.getElementById('inputfield').value.replace(/\r\n/g,"\n").split(/\n{2,}/g); // Fix IE CRs and split the textarea input document.getElementById('choices').options.length=0; // Empty select for (RowID in RowsDataAry) { var TextVal=RowsDataAry[RowID].replace(/\n/g,", ").replace(/, $/,""); // Set commas and remove the last comma document.getElementById('choices').options.length++; document.getElementById('choices').options[RowID].value=RowID; // Add option value document.getElementById('choices').options[RowID].text=TextVal; ; // Add option text } } LastKeyCode=KeyCode; } </script> 

<select id="choices" size="20"></select> 

<textarea id="inputfield" onkeypress="updateOptions(event)" cols="40" rows="20"></textarea> 

Firefox 3.6.3, Opera 10.53, IE 8 및 Iron 5.0.380에서 테스트되었습니다.

+0

그게 나에게 각 라인 줄 옵션을 입력으로 끝날 줄 것이다, 내가 필요로 두 개 또는 세 줄을 하나의 옵션으로 입력으로 끝나는 허용하는 것입니다 – ama

1

좋아하는 구분 기호를 사용할 수 있습니다. 예를 들어 빈 줄 (챕터 분리시) 또는 쉼표 또는 세미콜론. 입력 할 텍스트의 일부가 아닌 문자 (또는 일련의 문자).

사용자에게 분리 기호로 사용할 항목을 알려주는 것을 잊지 마십시오.

2

사용자가 텍스트 영역에 목록 가능 항목을 입력해야하고 여러 줄에 단일 옵션을 표시 할 수 있어야한다고 말한 것 같습니다.

앞에서 보았 듯이 하나의 줄 바꿈을 항목 구분 기호로 사용하면 작동하지 않습니다. 한 줄에 두 항목을, 두 줄에 한 항목을 구분할 수 없습니다.

항목 구분 기호 대신 하나의 줄 바꿈 두 개를 사용하십시오.

예 입력 :

Item One 

Item Two line 1 
Item Two line 2 

Item Three
+0

네가 무슨 말을하는지는 알고 있지만, 사용자와 클라이언트에 대해 더 흥미로운 아이디어가 필요합니다. 어쨌든 – ama

+2

@ama : 왜 귀하의 질문에 귀하의 문제에 대한 해결책이 아닌 원하는/재미있는 아이디어를 명시하지 않습니까? –